Current Server Time: 18:45 (Central Europe)

#apertus IRC Channel Logs

2022/01/07

Timezone: UTC


00:01
anuejn
that would be a very useful script
00:02
anuejn
if you want to look into it se6astian that would be much appreachiated
00:10
Bertl_oO
off to bed now ... have a good one everyone!
00:10
Bertl_oO
changed nick to: Bertl_zZ
00:20
vup
so anuejn and I started looking into the sensor calibration stuff aswell, especially motivated by the working hdmi raw setup, because that means we can capture a huge amount of darkframes, etc in a short amount of time.
00:20
vup
We started with simply capturing darkframes for different gain and exposure settings
00:22
vup
one thing we noticed is, that the darkframes seem show some gradient in the x direction
00:22
vup
this seems to occur regardless of gain setting and exposure time
00:23
vup
so it should not be stray light getting in
00:23
vup
is this a known effect, or are we maybe still making a mistake in capturing or analyzing the darkframes?
00:25
vup
(for example this is 256 darkframes at 4x gain, 11ms exposure averaged and the colormap goes from μ - 3σ to μ + 3σ: https://files.niemo.de/4x_11ms_mean.png)
00:28
vup
another interesting effect is, that the histogram of the pixel values seems to be pretty skewed at 1x gain: https://files.niemo.de/1x_hist.png
00:28
vup
and for 4x gain the histogram is even weirder, having two plateaus: https://files.niemo.de/4x_hist.png
00:30
vup
finally, subtracting the mean of the pixels in a column from the respective column produces some interesting patterns: https://files.niemo.de/1x_10ms_mean_by_column.png
00:31
vup
maybe we can use these to better compensate the row noise...
06:52
se6astian
I will try to pursue this script and collect all the relevant information yes
06:53
se6astian
will create issue on github first to keep track of the relevant information
07:23
se6astian
https://github.com/apertus-open-source-cinema/axiom-firmware/issues/196
07:24
se6astian
Bertl_zZ: which register is the frame counter in the generator block?
07:25
se6astian
vup: very interesting findings, I have not seen such behavior before
07:25
se6astian
but its great that you are now getting to the bottom of things in this regard
07:48
lexano
left the channel
08:01
lexano
joined the channel
08:09
Bertl_zZ
changed nick to: Bertl
08:09
Bertl
morning folks!
08:10
se6astian
hello!
08:11
Bertl
se6astian: see https://wiki.apertus.org/index.php/CMV12000_Register_Blocks (scan generator, second read only register)
08:12
Bertl
I've updated the raw hdmi gateware to allow for using both the scan fcnt as well as the cseq fcnt in the marker overlays
08:12
Bertl
http://vserver.13thfloor.at/Stuff/AXIOM/BETA/HDMIRAW/cmv_hdmi3_raw.bit
08:13
Bertl
this should simplify testing and allow for sanity checks
08:13
se6astian
0x80000004 RO [27:16] Scan Frame Counter is the one we want I assume
08:14
se6astian
what are "current events"?
08:14
se6astian
many thanks
08:15
Bertl
the current events are the event flags currently active
08:16
se6astian
how does this register correlate with scn_reg call from commandline?
08:17
Bertl
in the raw_mark.sh script, the 0xF000 value needs to be replaced with 0xF800 for the pixels where you want to use the cseq_fcnt instead of the scan_fcnt
08:18
Bertl
I would suggest to have the top-left and bottom-right with 0xF000 while the top-right and bottom-left use the 0xF800
08:18
Bertl
this way you can compare the sequencer and scan generator counts
08:19
se6astian
axiom_scn_regi is the correct cal here I assume?
08:19
se6astian
https://github.com/apertus-open-source-cinema/axiom-firmware/blob/main/software/scripts/axiom_mp1_reg.func
08:19
Bertl
yep, looks good
08:20
se6astian
thanks, I think now we have all the required info together
08:20
se6astian
I updated https://github.com/apertus-open-source-cinema/axiom-firmware/issues/196
08:21
Bertl
note that you need to make sure (for the alternating raw data output) that the hdmi output rate has a factor of two to the acquisition frame rate
08:22
Bertl
so the exposure time has to be within the proper limits
08:23
se6astian
noted
13:52
Bertl
off for now ... bbl
13:52
Bertl
changed nick to: Bertl_oO
14:13
vup
se6astian: so re the darkframes, when anuejn pushes his local changes it would be pretty interesting to capture some darkframes from as many different sensors as possible, to look into these patterns and see if this is just random or actually present on multiple sensors. How many sensors do we currently have available?
14:17
vup
and how many community members with a beta would be willing to capture some?
14:18
vup
it doesn't really take a lot of time, I think we did a pretty comprehensive scan of 12 different exposure values + 4 gains in ~30 minutes
14:18
vup
it just produces a lot of data
14:18
vup
(~120Gb uncompressed)
14:18
vup
but it might be possible to compress them atleast a bit (naive xz or zstd only gives atmost a factor of two compression)
14:19
vup
also Bertl_oO: how difficult would it be to always have the dark columns transmitted, even when not capturing the full sensor resolution?
14:25
vup
oh also, do we know if there are different revision of the cmv12k?
14:27
se6astian
well I can offer 1 sensor
14:28
se6astian
I dont think anyone else has a magewell setup ready at this point
14:28
se6astian
maybe Bertl as well
14:28
se6astian
I am not aware of different cmv12000 revisions
14:28
se6astian
just color/mono/nir
14:29
se6astian
they had more loose defect samples in the beginning but after they saw the defects are not comon they lowered them
14:29
se6astian
and called it V2
14:29
se6astian
but that quickly disappeared as V1 vs V2 differeces were just defect specificationsa nd therefore irelevant
14:30
se6astian
regading black coloumns, we can do 2048x1080 via hdmi
14:30
se6astian
resulting in a full width raw frame with A+B frames
14:34
aombk
joined the channel
14:35
vup
ok, thats atleast on sensor to compare against
14:35
vup
so probably no relevant revisions, thats nice to know
14:36
vup
so with the black columns, it probably would be pretty interesting to just have them always present, regardless of wether we do the full width or not
14:36
vup
as there might be legit reasons for not wanting the full width probably
14:38
anuejn
I pushed my changes
14:38
vup
nice :)
14:38
anuejn
I captured the dark-frames with a bash one liner and changing the gain in between
14:39
anuejn
the one liner is:
14:39
anuejn
for time in $(seq 0 11); do ssh operator@192.168.0.95 "echo 1 > /axiom-api/devices/cmv12000/computed/exposure_time_ms/value; cat /axiom-api/devices/cmv12000/computed/exposure_time_ms/value"; done
14:39
anuejn
so
14:39
anuejn
*no
14:39
anuejn
for time in 1; do cargo run --release -- WebcamInput --device 0 ! DualFrameRawDecoder --first-red-x true --first-red-y false ! RawBlobWriter --number-of-frames 256 --path target/darkframe_2x_$(ssh operator@192.168.0.95 "echo $time > /axiom-api/devices/cmv12000/computed/exposure_time_ms/value; cat /axiom-api/devices/cmv12000/computed/exposure_time_ms/value").blob; done
14:39
anuejn
is afk for a while now
15:05
se6astian
3d printed new recorder enclosure
15:05
se6astian
now heading home
19:47
se6astian
the recorder has been assembled, and miraculously everything seems to fit now with the connectors and bulky cables
19:47
se6astian
will finish and start it up tomorrow
20:25
anuejn
nice