Current Server Time: 03:30 (Central Europe)

#apertus IRC Channel Logs

2018/02/13

Timezone: UTC


00:00
rton
left the channel
00:17
BAndiT1983
changed nick to: BAndiT1983|away
01:01
futarisIRCcloud
left the channel
02:03
futarisIRCcloud
joined the channel
02:59
Bertl_oO
left the channel
03:57
Tintin_
joined the channel
04:06
Tintin_
left the channel
04:14
aombk
joined the channel
05:49
Bertl_oO
joined the channel
06:50
BAndiT1983|away
changed nick to: BAndiT1983
07:57
BAndiT1983
changed nick to: BAndiT1983|away
08:16
niemand
joined the channel
08:16
niemand
left the channel
08:16
niemand
joined the channel
08:50
Bertl_oO
changed nick to: Bertl_zZ
09:08
futarisIRCcloud
left the channel
09:10
niemand
left the channel
10:02
futarisIRCcloud
joined the channel
10:03
rton
joined the channel
10:50
niemand
joined the channel
11:54
BAndiT1983|away
changed nick to: BAndiT1983
12:37
se6astian|away
changed nick to: se6astian
12:42
futarisIRCcloud
left the channel
12:45
se6astian
changed nick to: se6astian|away
12:45
supragya
joined the channel
12:52
se6astian|away
changed nick to: se6astian
12:53
BAndiT1983
changed nick to: BAndiT1983|away
12:53
se6astian
changed nick to: se6astian|away
13:27
Bertl_zZ
changed nick to: Bertl
14:04
supragya
Hi, Bertl, I have a question regarding RAW12 format
14:04
supragya
can you help me with that
14:04
supragya
?
14:06
supragya
as far as I understand... Format Specifications no header, little endian, 12bit (leaves out the 4 lsb zeros of RAW16)
14:06
supragya
A hex dump of first few bytes looks as follows: 08 00 77 08 50 77 07 60 6D 07 00 75 0D 90
14:07
supragya
of test image (RAW12)
14:08
supragya
However, both big endian and little endia do not have lsb 0 in any pattern I can see (16 bytes at once)
14:10
supragya
can u explain the dump perhaps? (where is that 4lsb 0 exactle, and which bytes actually correspond to R G G B ?)
14:16
seku_
joined the channel
14:22
Bertl
raw12 should be 12bit per sensel packed
14:22
Bertl
but note that we also have a raw16 format which uses 16bit per sensel
14:23
Bertl
and because there are no headers, sometimes folks use the wrong extension and raw12 is actually raw16 (and vice versa)
14:23
supragya
left the channel
14:49
supragya
joined the channel
15:01
supragya
ping Bertl hi!
15:11
supragya
left the channel
15:36
Bertl
hey
15:39
BAndiT1983|away
changed nick to: BAndiT1983
15:40
BAndiT1983
Bertl, RAW12 are tightly packed, so one has to extract them to 16bit first
15:42
Bertl
not sure what you mean by that
16:10
niemand
left the channel
16:21
BAndiT1983
it's a stream of 12bit data, so the bits have to be extracted, easiest way is to process 3 bytes at once, to get 2 x 16 bit values
16:21
Bertl
2x12 bit
16:22
BAndiT1983
yes, sorry, wanted to say, that they have to be copied to 2x16bit
16:22
Bertl
why's that?
16:22
BAndiT1983
to be able to store them
16:23
BAndiT1983
or you convert them at once to 8bit, but with less precision
16:23
Bertl
you can also store them as 12bit
16:24
BAndiT1983
which data type? ;)
16:24
Bertl
12 bit structure element
16:27
supragya
joined the channel
16:27
BAndiT1983
performance is not good then
16:27
Bertl
didn't say that
16:27
supragya
Hi, Bertl
16:28
Bertl
hey supragya! check the IRC logs
16:34
supragya
sure. I looked into them
16:34
supragya
Few questions: sensel packed...(could not understand)
16:35
supragya
2x16 bit values or 2x12 how? 2 channels here?
16:35
Bertl
in a stream of data bits, every 12 bits contain one sensel, no padding
16:36
supragya
Okay, so I should not look for 4 bits lsb padding as given in "Format Specifications no header, little endian, 12bit (leaves out the 4 lsb zeros of RAW16)"?
16:37
Bertl
the 12bit version leaves out the zero padding, yes
16:39
BAndiT1983
no padding, just take 3bytes and extract left and right side
16:40
supragya
k
16:41
supragya
so i will split 08 00 77 into 08 0 and 0 77
16:41
supragya
however, what exactly are these 2 channels? doesnot look like RGB (then it would be 3), is it input from 2 different lenses?
16:42
Bertl
the raw data is a bayer pattern, RG/GB
16:42
Bertl
so the first line goes RGRGRGRG...
16:42
Bertl
and the second line goes GBGBGB...
16:44
supragya
so am i right that [08 00 77] & [10101010 00000000] would give me debayered R?
16:45
Bertl
debayering can be done in many ways, but on the even lines every second sample is a 'red' and on the odd lines every second a 'blue'
16:47
supragya
thank you for the help, Bertl, I will ping you in if something else comes up. Can u point me to some related documents which I can refer to in the meanwhile, to get a better understanding
16:48
Bertl
https://en.wikipedia.org/wiki/Bayer_filter
16:49
Bertl
and of course the cmv_snap sources
16:50
supragya
can i get a link?
16:50
Bertl
https://github.com/apertus-open-source-cinema/beta-software/tree/master/software/cmv_tools
16:51
supragya
TY
16:52
Bertl
np
16:55
BAndiT1983
one has to know the pattern
16:56
BAndiT1983
usuall RGGB, but you can also find it out by assigning manually
16:56
BAndiT1983
so first row would be R and G pixels, second G and B accordingly
16:57
BAndiT1983
you can also look in OC, there is ProcessingTest which shows which methods are called for debayering, this ones are in OCcore
16:58
seku_
left the channel
17:20
supragya
thank you Bandit.
17:20
supragya
:)
17:21
supragya
however, what is OC?
17:32
Bertl
we have no idea, but he is always talking about OC this and OC that ... so it must be important :)
17:42
BAndiT1983
:D
17:42
BAndiT1983
OC is OpenCine, enough hints for now ;)
17:43
BAndiT1983
Bertl, had a question yesterday about orientation markers on PCBs, it's about automatic inspection
17:44
supragya
left the channel
17:47
Bertl
let's hear ...
17:57
supragya
joined the channel
18:03
BAndiT1983
tested template matching with opencv, python for now as javascript version was complicated to come by
18:04
BAndiT1983
template matching is sufficient if things are placed in the same direction
18:05
BAndiT1983
what are the usage cases for automatic inspection? seen some scans of boards without parts and some gray stuff on the pads, other scans had same boards, but already with chips
18:06
BAndiT1983
it works also rather nice with some unique markers, like capacitors with C7 near them, but it also recognizes stuff, if i delete C from C7 and draw something on the capacitor
18:07
Bertl
I presume the main purpose will be to check proper orientation and correct soldering on the final PCB, but se6astian certainly knows more
18:08
BAndiT1983
he is sick at the moment, just wanted to chat a bit with you, to ask about certan guidelines when you design PCBs
18:09
Bertl
okay?
18:09
BAndiT1983
as we have certain PCBs, we could provide several checks and the software would tell us, what is missing
18:09
BAndiT1983
by guidelines i mean, if all the parts have text near them, this would simplify the job to find right areas
18:10
BAndiT1983
downloaded PCB scans already and looked a bit through them, but had not much time in the last days
18:10
Bertl
not sure why you want to detect the text?
18:11
Bertl
the boards have fiducials at known positions, if you find those, everything else can be calculated from the part locations (relative to those fiducials)
18:12
BAndiT1983
i've seen different ones, some boards have NE, SW etc.
18:12
BAndiT1983
others just crosses
18:13
BAndiT1983
detection is done by using a template, small part of the image in that case, as i suppose that we have always the same scanner for now
18:13
BAndiT1983
opencv shift the template in horizontal and vertical direction to try to find matching areas, it works also rather well with two capacitors i've extracted yesterday
18:15
BAndiT1983
i suppose, that one task would be to find right orientation and to rotate the scan, but also to use homography possibly, as i can't tell if template matching would be sufficient
18:15
BAndiT1983
as it doesn't support rotation by default
18:17
Bertl
I think it should be doable to always scan them the 'right' way round
18:17
Bertl
but in any case a correctional rotation will be required as they are not very likely to be perfectly aligned
18:18
BAndiT1983
okay, then we can avoid this part for now, will implement something just to learn opencv better
18:18
Bertl
(again, the fiducials will provide the information for that)
18:18
BAndiT1983
which fiducials are there? as i said, seens different ones
18:19
BAndiT1983
have possibly to check the layout to know what the dimensions between them are, so i can calculate other ones, if required
18:20
BAndiT1983
what are the containers, which are green or orange, around PCBS?
18:21
Bertl
they are always the same on our PCBs
18:21
Bertl
(the fiducials)
18:22
Bertl
they are marked with red on the picture in T934
18:24
BAndiT1983
alright, then i've looked at the right ones
18:24
BAndiT1983
seems like opencv has nice methods to straighten the image
18:24
Bertl
excellent
18:24
BAndiT1983
is it possible to scan PCBs with some homogenous background?
18:25
BAndiT1983
not that it would be important, as i would try to create some masks, so we can cut background off, but maybe it would be easier after all
18:26
Bertl
probably not a big problem
18:28
BAndiT1983
when Sebastian is well again, we can discuss more details, will create some methods beforehand, but in python for now, as it was easier to set up and didn't want to involve C++ as later i still plan to create a web interface if we pursuit this idea further
18:30
Bertl
sounds good
19:04
niemand
joined the channel
19:04
niemand
left the channel
19:04
niemand
joined the channel
19:21
supragya
left the channel
21:03
arpu
left the channel
22:25
niemand
left the channel
22:32
futarisIRCcloud
joined the channel
22:35
seku
left the channel
22:35
seku
joined the channel
22:44
Bertl
off to bed now ... have a good one everyone!
22:44
Bertl
changed nick to: Bertl_zZ
23:38
davidak
joined the channel
23:54
BAndiT1983
changed nick to: BAndiT1983|away