Current Server Time: 15:21 (Central Europe)

#apertus IRC Channel Logs

2018/02/13

Timezone: UTC


23:00
rton
left the channel
23:17
BAndiT1983
changed nick to: BAndiT1983|away
00:01
futarisIRCcloud
left the channel
01:03
futarisIRCcloud
joined the channel
01:59
Bertl_oO
left the channel
02:57
Tintin_
joined the channel
03:06
Tintin_
left the channel
03:14
aombk
joined the channel
04:49
Bertl_oO
joined the channel
05:50
BAndiT1983|away
changed nick to: BAndiT1983
06:57
BAndiT1983
changed nick to: BAndiT1983|away
07:16
niemand
joined the channel
07:16
niemand
left the channel
07:16
niemand
joined the channel
07:50
Bertl_oO
changed nick to: Bertl_zZ
08:08
futarisIRCcloud
left the channel
08:10
niemand
left the channel
09:02
futarisIRCcloud
joined the channel
09:03
rton
joined the channel
09:50
niemand
joined the channel
10:54
BAndiT1983|away
changed nick to: BAndiT1983
11:37
se6astian|away
changed nick to: se6astian
11:42
futarisIRCcloud
left the channel
11:45
se6astian
changed nick to: se6astian|away
11:45
supragya
joined the channel
11:52
se6astian|away
changed nick to: se6astian
11:53
BAndiT1983
changed nick to: BAndiT1983|away
11:53
se6astian
changed nick to: se6astian|away
12:27
Bertl_zZ
changed nick to: Bertl
13:04
supragya
Hi, Bertl, I have a question regarding RAW12 format
13:04
supragya
can you help me with that
13:04
supragya
?
13:06
supragya
as far as I understand... Format Specifications no header, little endian, 12bit (leaves out the 4 lsb zeros of RAW16)
13: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
13:07
supragya
of test image (RAW12)
13:08
supragya
However, both big endian and little endia do not have lsb 0 in any pattern I can see (16 bytes at once)
13:10
supragya
can u explain the dump perhaps? (where is that 4lsb 0 exactle, and which bytes actually correspond to R G G B ?)
13:16
seku_
joined the channel
13:22
Bertl
raw12 should be 12bit per sensel packed
13:22
Bertl
but note that we also have a raw16 format which uses 16bit per sensel
13:23
Bertl
and because there are no headers, sometimes folks use the wrong extension and raw12 is actually raw16 (and vice versa)
13:23
supragya
left the channel
13:49
supragya
joined the channel
14:01
supragya
ping Bertl hi!
14:11
supragya
left the channel
14:36
Bertl
hey
14:39
BAndiT1983|away
changed nick to: BAndiT1983
14:40
BAndiT1983
Bertl, RAW12 are tightly packed, so one has to extract them to 16bit first
14:42
Bertl
not sure what you mean by that
15:10
niemand
left the channel
15: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
15:21
Bertl
2x12 bit
15:22
BAndiT1983
yes, sorry, wanted to say, that they have to be copied to 2x16bit
15:22
Bertl
why's that?
15:22
BAndiT1983
to be able to store them
15:23
BAndiT1983
or you convert them at once to 8bit, but with less precision
15:23
Bertl
you can also store them as 12bit
15:24
BAndiT1983
which data type? ;)
15:24
Bertl
12 bit structure element
15:27
supragya
joined the channel
15:27
BAndiT1983
performance is not good then
15:27
Bertl
didn't say that
15:27
supragya
Hi, Bertl
15:28
Bertl
hey supragya! check the IRC logs
15:34
supragya
sure. I looked into them
15:34
supragya
Few questions: sensel packed...(could not understand)
15:35
supragya
2x16 bit values or 2x12 how? 2 channels here?
15:35
Bertl
in a stream of data bits, every 12 bits contain one sensel, no padding
15: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)"?
15:37
Bertl
the 12bit version leaves out the zero padding, yes
15:39
BAndiT1983
no padding, just take 3bytes and extract left and right side
15:40
supragya
k
15:41
supragya
so i will split 08 00 77 into 08 0 and 0 77
15: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?
15:42
Bertl
the raw data is a bayer pattern, RG/GB
15:42
Bertl
so the first line goes RGRGRGRG...
15:42
Bertl
and the second line goes GBGBGB...
15:44
supragya
so am i right that [08 00 77] & [10101010 00000000] would give me debayered R?
15: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'
15: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
15:48
Bertl
https://en.wikipedia.org/wiki/Bayer_filter
15:49
Bertl
and of course the cmv_snap sources
15:50
supragya
can i get a link?
15:50
Bertl
https://github.com/apertus-open-source-cinema/beta-software/tree/master/software/cmv_tools
15:51
supragya
TY
15:52
Bertl
np
15:55
BAndiT1983
one has to know the pattern
15:56
BAndiT1983
usuall RGGB, but you can also find it out by assigning manually
15:56
BAndiT1983
so first row would be R and G pixels, second G and B accordingly
15:57
BAndiT1983
you can also look in OC, there is ProcessingTest which shows which methods are called for debayering, this ones are in OCcore
15:58
seku_
left the channel
16:20
supragya
thank you Bandit.
16:20
supragya
:)
16:21
supragya
however, what is OC?
16:32
Bertl
we have no idea, but he is always talking about OC this and OC that ... so it must be important :)
16:42
BAndiT1983
:D
16:42
BAndiT1983
OC is OpenCine, enough hints for now ;)
16:43
BAndiT1983
Bertl, had a question yesterday about orientation markers on PCBs, it's about automatic inspection
16:44
supragya
left the channel
16:47
Bertl
let's hear ...
16:57
supragya
joined the channel
17:03
BAndiT1983
tested template matching with opencv, python for now as javascript version was complicated to come by
17:04
BAndiT1983
template matching is sufficient if things are placed in the same direction
17: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
17: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
17: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
17: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
17:09
Bertl
okay?
17:09
BAndiT1983
as we have certain PCBs, we could provide several checks and the software would tell us, what is missing
17:09
BAndiT1983
by guidelines i mean, if all the parts have text near them, this would simplify the job to find right areas
17:10
BAndiT1983
downloaded PCB scans already and looked a bit through them, but had not much time in the last days
17:10
Bertl
not sure why you want to detect the text?
17: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)
17:12
BAndiT1983
i've seen different ones, some boards have NE, SW etc.
17:12
BAndiT1983
others just crosses
17: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
17: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
17: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
17:15
BAndiT1983
as it doesn't support rotation by default
17:17
Bertl
I think it should be doable to always scan them the 'right' way round
17:17
Bertl
but in any case a correctional rotation will be required as they are not very likely to be perfectly aligned
17:18
BAndiT1983
okay, then we can avoid this part for now, will implement something just to learn opencv better
17:18
Bertl
(again, the fiducials will provide the information for that)
17:18
BAndiT1983
which fiducials are there? as i said, seens different ones
17:19
BAndiT1983
have possibly to check the layout to know what the dimensions between them are, so i can calculate other ones, if required
17:20
BAndiT1983
what are the containers, which are green or orange, around PCBS?
17:21
Bertl
they are always the same on our PCBs
17:21
Bertl
(the fiducials)
17:22
Bertl
they are marked with red on the picture in T934
17:24
BAndiT1983
alright, then i've looked at the right ones
17:24
BAndiT1983
seems like opencv has nice methods to straighten the image
17:24
Bertl
excellent
17:24
BAndiT1983
is it possible to scan PCBs with some homogenous background?
17: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
17:26
Bertl
probably not a big problem
17: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
17:30
Bertl
sounds good
18:04
niemand
joined the channel
18:04
niemand
left the channel
18:04
niemand
joined the channel
18:21
supragya
left the channel
20:03
arpu
left the channel
21:25
niemand
left the channel
21:32
futarisIRCcloud
joined the channel
21:35
seku
left the channel
21:35
seku
joined the channel
21:44
Bertl
off to bed now ... have a good one everyone!
21:44
Bertl
changed nick to: Bertl_zZ
22:38
davidak
joined the channel
22:54
BAndiT1983
changed nick to: BAndiT1983|away