01:18 | Wescotte | left the channel | |
06:51 | Sasha_C | joined the channel | |
07:03 | se6astian | joined the channel | |
07:05 | se6astian | good monring
| |
07:06 | Sasha_C | Greetings Sebastian
| |
07:06 | Sasha_C | How are you today?
| |
07:20 | se6astian | fine fine :)
| |
07:20 | se6astian | and you?
| |
07:23 | Sasha_C | I'm well, but my head feels horrible from a serious lack of sleep ;)
| |
07:24 | se6astian | then go to sleep! :D
| |
07:25 | Sasha_C | I will in a few hours. In regards to the next general meeting, could we schedule it for Tuesday night (around Wednesday 12am in Sydney) next week?
| |
07:58 | se6astian | doodle sent
| |
08:00 | Sasha_C | Thanks :D
| |
08:17 | intracube | joined the channel | |
09:20 | Bertl | morning everyone!
| |
09:22 | Sasha_C | Good morning Bertl
| |
09:23 | se6astian | hello!
| |
09:23 | se6astian | I reviewed the lens mount part
| |
09:23 | se6astian | then tried to order from firstcut
| |
09:23 | se6astian | and on the final page of their order process
| |
09:24 | se6astian | "error processing your order" :)
| |
09:24 | se6astian | repeatedly
| |
09:29 | Bertl | hehe
| |
09:29 | Bertl | maybe a sign?
| |
09:30 | Bertl | btw, did you adapt the seal area?
| |
09:31 | se6astian | nope
| |
09:32 | Bertl | it might be a good idea to do that, so that we can actually seal the sensor off with a piece of plastic lateron
| |
09:34 | Bertl | i.e. just match the inner part to about 1mm around the glass aread, that should do the trick
| |
09:36 | Bertl | *area
| |
09:40 | se6astian | should we design the plastic piece as well already?
| |
09:40 | se6astian | you mean the palstic is put in from the "front" (lens side right)?
| |
09:41 | Bertl | I think the plastic sheet (or rubber or whatever) should go between the lens mount and the seal area of the sensor
| |
09:42 | Bertl | ATM, we have a gap, as the inner shape near the seal area is much larger than the seal area
| |
09:43 | Bertl | http://vserver.13thfloor.at/Stuff/AXIOM/lensmount_0002.png
| |
09:43 | Bertl | https://www.apertus.org/sites/default/files/alpha-lensmount02.jpg
| |
09:44 | Bertl | it is not that extreme as shown in the rendering, but it looks similar
| |
09:51 | se6astian | firstcut just called me
| |
09:56 | se6astian | ok have the lens mount open and will take a look at the seal area now
| |
10:02 | se6astian | how much overlap should the seal area/metal/rubber have from the sides?
| |
10:02 | Bertl | it should leave about 0.5-1mm space around the glass
| |
10:03 | Bertl | i.e. nothing should really need to touch the glass area
| |
10:08 | se6astian | so since the seal area has sharp edges
| |
10:08 | se6astian | should the inner aluminum "window" also loose the rounded corners?
| |
10:12 | Bertl | let me draw a picture :)
| |
10:17 | se6astian | ok :)
| |
10:19 | Bertl | http://vserver.13thfloor.at/Stuff/AXIOM/lens-mount-seal.png
| |
10:20 | se6astian | got it, what do the colors represent?
| |
10:21 | Bertl | the yellow area is the seal area, the red area is the glass
| |
10:21 | Bertl | and the blue overlay is how the lens mount IMHO should fit
| |
10:21 | Bertl | it is a little out of proportion to demonstrate the overlap
| |
10:22 | Bertl | the blue(lens-mount)-red(glass) distance should be at least 0.5mm
| |
10:23 | Bertl | the yello(seal area)-blue overlap should be at least 1mm
| |
10:23 | Bertl | (more is probably better here)
| |
10:24 | Bertl | the 'seal' (i.e. the plastic or rubber mask) we are going to add will be between the blue and yellow (z-dimension)
| |
10:25 | Bertl | and should probably have a cutout equal to the glass area
| |
10:36 | se6astian | hmm, doesnt make it much clearer for me sorry, will create an image as well :)
| |
10:38 | Bertl | we want the seal area to overlap with the lens mount bottom as much as possible without hitting the glass area (in the xy-plane)
| |
10:39 | Bertl | (that's what the seal area is for, sealing off the sensor :)
| |
11:03 | se6astian | https://cloud.gerade.org/public.php?service=files&t=88644302ffde4f6e5659627a3c8bbf32&download&path=/Axiom/lens-mount---seal-area-01.jpg
| |
11:04 | se6astian | option 1: window slightly outside seal area
| |
11:04 | se6astian | option 2 window slightly inside seal area (2mm overlap)
| |
11:08 | Bertl | with window you mean the rounded rectangle visible at the bottom of the lens mount, yes?
| |
11:08 | Bertl | that should completely overlap the seal area (that's the purpose of the seal area)
| |
11:08 | Bertl | but it should not overlap the glass area
| |
11:09 | Bertl | (and to be on the safe side, I'd keep a distance of 0.5mm to the glass area)
| |
11:10 | Bertl | btw, your 'cloud' has the wrong mime data for jpegs (and maybe other images as well) forcing a download
| |
11:12 | se6astian | with window you mean the rounded rectangle visible at the bottom of the lens mount, yes? yes
| |
11:13 | se6astian | ok, so option 2 is looking "right, right?
| |
11:13 | se6astian | I just make sure the distances are accurate to the glass area (0.5mm)
| |
11:14 | Bertl | yes and keep them round (like the glass are)
| |
11:14 | Bertl | *area
| |
11:14 | Bertl | keep the window round in equal distance to the glass area - is what I meant
| |
11:16 | se6astian | understood
| |
11:17 | se6astian | the datasheet does not specify the glass area dimensions, but I think we measured it from your scans?
| |
11:19 | Bertl | 7.1 contains the data
| |
11:19 | Bertl | 28.7x27.8
| |
11:20 | Bertl | where the seal area is 34.7x33.8
| |
11:21 | Bertl | but double checking with the scans won't hurt
| |
11:21 | se6astian | in the scans the glass extendes further outside than the groove in the ceramic
| |
11:24 | Bertl | note that there are two steps in the groove
| |
11:25 | Bertl | actually two horizontal and three vertical
| |
11:25 | Bertl | http://vserver.13thfloor.at/Stuff/AXIOM/cmv12k_close_001.png
| |
11:26 | Bertl | on the top, you see the gold pins in the first and second step
| |
11:26 | Bertl | and the gold border on the third, inner step
| |
11:26 | Bertl | on the left you see the bar-code like stripes on the first level
| |
11:26 | Bertl | and the gold on the second (which is the same level as the third from top)
| |
11:27 | Bertl | the glass are seems to be inside the first groove
| |
11:27 | Bertl | (this also matches with the schematic drawing in the datasheet 7.1)
| |
11:32 | se6astian | I see, perfect
| |
11:43 | se6astian | done
| |
11:43 | se6astian | https://cloud.gerade.org/public.php?service=files&t=88644302ffde4f6e5659627a3c8bbf32&download&path=/Axiom/F-mount%20to%20CMV12k-V04.pdf
| |
11:43 | se6astian | please verify
| |
11:45 | se6astian | should I create STL for you as well?
| |
11:46 | Bertl | nah, looks good to me
| |
11:46 | Bertl | ah, one thing
| |
11:46 | Bertl | the base is now 1mm larger than originally designed or 1mm on both sides?
| |
11:52 | se6astian | 59mm total width
| |
11:53 | Bertl | okay, that is 1mm larger which is perfectly fine
| |
11:54 | se6astian | yes
| |
11:55 | se6astian | uploaded new file to firstcut
| |
11:55 | se6astian | will take a bit again until its reviewed
| |
11:55 | se6astian | did you have time to cut the enclosure parts yet?
| |
11:56 | Bertl | not yet, was busy during the weekend with all kind of stuff
| |
11:56 | Bertl | but should happen in the next few days
| |
11:56 | Bertl | (i.e. definitely before we get the sensor)
| |
11:57 | Bertl | btw, you didn't bring the power adapter with your zedboard, yes?
| |
11:57 | Bertl | (last time in the lab)
| |
11:57 | Bertl | s/in the/at the/
| |
11:58 | se6astian | nope, left it at home, you want it?
| |
11:58 | Bertl | no problem at the moment, just checking
| |
12:05 | se6astian | ok
| |
12:09 | se6astian | new firstcut quote is here
| |
12:09 | se6astian | since we cut away a bit less its 5 cheaper per piece ;)
| |
12:11 | PhilippeJ | joined the channel | |
12:12 | se6astian | hi PhilippeJ
| |
12:13 | se6astian | Surface Finish: As-Milled (tool marks visible)
| |
12:13 | se6astian | is that a problem for us?
| |
12:19 | Bertl | maybe, but we can put it in the tumbler I guess
| |
12:19 | Bertl | we are talking black POM, yes?
| |
12:21 | se6astian | yes: Acetal Copolymer - Black (TECAFORM AH)
| |
12:23 | Bertl | okay shouldn't be a problem then, what would be the difference for a perfect finish?
| |
12:23 | Bertl | (price difference that is)
| |
12:24 | se6astian | there is no option
| |
12:24 | se6astian | its just a notice
| |
12:24 | Bertl | okay, so nothing we can do about it anyways :)
| |
12:24 | se6astian | yes :)
| |
12:24 | se6astian | and ordered!
| |
12:28 | se6astian | and sent another reminder to the guy who wants to sell his nikon f65
| |
12:29 | se6astian | he must be very happy he found a buyer as he has not replied to me for a week so far after I said I wiould buy it
| |
12:29 | Bertl | what about the second person?
| |
12:36 | PhilippeJ | hello !
| |
12:36 | Sasha_C | hi Philippe
| |
12:39 | se6astian | good idea I ll contact the other f65 sellers as well now
| |
12:41 | se6astian | done
| |
13:05 | Bertl | off for a nap ... bbl
| |
13:07 | dmj_nova | left the channel | |
13:10 | dmj_nova | joined the channel | |
13:40 | se6astian | PhilippeJ, I updated the doc for tomorrows meeting with cmosis
| |
13:40 | se6astian | is there anything else you want to prepare/discuss before meeting them?
| |
13:47 | PhilippeJ | well
| |
13:47 | PhilippeJ | let me check
| |
13:48 | PhilippeJ | about them being featured
| |
13:48 | PhilippeJ | on the crowdfunding campaing
| |
13:48 | PhilippeJ | do we ask for something in return ?
| |
13:48 | PhilippeJ | would they like to partner with us somehow ?
| |
13:49 | PhilippeJ | Also, se6astian
| |
13:50 | PhilippeJ | (sorry postedtoo fast
| |
13:50 | PhilippeJ | )
| |
13:50 | PhilippeJ | can you explain me how the sensor is attached
| |
13:50 | PhilippeJ | when you say aluminium
| |
13:50 | PhilippeJ | is it the sensor socket ?
| |
13:51 | se6astian | I would not ask for something in return, maybe they will feel creative themselves
| |
13:51 | se6astian | like backing the campaign when the time comes
| |
13:52 | se6astian | the sensor is screwed directly to konstantins lens mount
| |
13:52 | se6astian | which is aluminum and in the new version I just ordered a hard plastic
| |
13:52 | PhilippeJ | ok other side
| |
13:52 | PhilippeJ | sensor mount
| |
13:53 | PhilippeJ | something to lock it down and avod vibrations for instance
| |
13:53 | PhilippeJ | ?
| |
13:56 | se6astian | on the other side (back) is the andon socket
| |
13:57 | PhilippeJ | yep
| |
13:57 | PhilippeJ | ok I'll ask for general recomendations
| |
13:57 | PhilippeJ | at least I know what we do
| |
13:57 | PhilippeJ | andon socket : what material is it ,
| |
13:57 | PhilippeJ | ?
| |
13:58 | Sasha_C | left the channel | |
14:05 | se6astian | hmm, I am afraid we dont know exactly
| |
14:05 | se6astian | some kind of plastic
| |
14:05 | se6astian | latest crowd funded camera: http://www.indiegogo.com/projects/panono-panoramic-ball-camera
| |
14:06 | se6astian | just wired the money to firstcut after they called me again to check if we really have no vat id :)
| |
15:05 | PhilippeJ | se6astian, is the lens mount much cheaper with hard plastic ?
| |
15:14 | se6astian | yes
| |
15:34 | se6astian | I need a bit of help with regular expressions
| |
15:34 | se6astian | I have a function:
| |
15:34 | se6astian | $txt = preg_replace('"<!--import-ignore-start-->[\\s\\S]+<!--import-ignore-end-->"', "", $txt);
| |
15:35 | se6astian | that removes anything between the import-ignore tags
| |
15:35 | se6astian | but now the problem seems that I have multiple of such tags in the content
| |
15:35 | se6astian | and instead of removing the content between each of them, the result is that all other content between the first opening and last ending tag are stripped
| |
15:43 | Bertl | back now ...
| |
15:45 | se6astian | I bet you are good with regex :)
| |
15:45 | Bertl | regular expressions are not the best choice to match strings
| |
15:45 | se6astian | http://regexr.com?375iq
| |
15:46 | Bertl | what exactly do you want to do?
| |
15:47 | Bertl | btw that page seems to load forever
| |
15:48 | se6astian | basically this: "some content that should stay <remove-start>some content that should be removed<remove-end> some more content that should stay <remove-start>some more content that should be removed<remove-end> and some content that should stay"
| |
15:48 | se6astian | I only want to have the content to stay at the end
| |
15:50 | Bertl | what file contains those tags? i.e. what syntax/semantic does it follow?
| |
15:50 | Bertl | html? xml? unknown?
| |
15:53 | se6astian | html
| |
15:56 | PhilippeJ | Ok see you guys !
| |
15:59 | Bertl | http://regexr.com?375j3
| |
15:59 | PhilippeJ | And for your enjoyement : openrisc linux emulator in javascript : http://jor1k.widgetry.org/
| |
15:59 | PhilippeJ | left the channel | |
16:03 | FergusL | Hi here!
| |
16:03 | se6astian | haha, the "?" did the trick
| |
16:03 | se6astian | Hi FergusL
| |
16:03 | se6astian | many thanks Bertl
| |
16:03 | se6astian | I am just testing Gabes DNG converter
| |
16:03 | se6astian | it works
| |
16:03 | se6astian | I am looking at the picture you took of the IT8 chart in ufraw
| |
16:04 | se6astian | though the colors are "anywhere"
| |
16:05 | se6astian | actually it looks like the bayer pattern pixel order is not set correctly
| |
16:05 | FergusL | Oh the dng converter is done! Great!
| |
16:05 | FergusL | Maybe it's an int/float issue
| |
16:06 | Bertl | well, I uploaded a png as well IIRC
| |
16:06 | FergusL | Depends what dng expects
| |
16:08 | se6astian | yes I am looking at the png right now
| |
16:08 | se6astian | there is no position I can turn the whitebalance sliders to to get colors anywhere need what the png looks like :)
| |
16:08 | se6astian | *near
| |
16:08 | FergusL | Can I take a look at the code ? (haven't looked at this channel in days)
| |
16:09 | Bertl | yes, I'd be interested in the code as well
| |
16:09 | se6astian | https://github.com/apertus-open-source-cinema/CMV12000_DNG_Writer
| |
16:09 | se6astian | you need numby as well
| |
16:09 | se6astian | sudo apt-get install python-numpy
| |
16:18 | se6astian | the self_10ms.raw16 file works fine though
| |
16:18 | se6astian | IT8_incand.raw16 doesnt
| |
16:20 | Bertl | yeah, I know why, it is because the reader doesn't check that the image is Y flipped
| |
16:20 | Bertl | so the bayer pattern changes
| |
16:20 | se6astian | ah yes!
| |
16:21 | Bertl | for the older images it was RGGB, now it is GBRG
| |
16:22 | se6astian | emailed gabe
| |
16:26 | gcolburn | joined the channel | |
16:27 | Bertl | welcome gcolburn!
| |
16:27 | se6astian | hurray, the man of the hour :)
| |
16:27 | Bertl | I wonder why :)
| |
16:27 | gcolburn | saw the email
| |
16:27 | se6astian | to get rid of the fixed-pattern-noise we should try this approach: https://en.wikipedia.org/wiki/Flat-field_correction
| |
16:28 | gcolburn | so if I understand correctly should y columns are completely reversed, so instead of RGGB its reading GBRG?
| |
16:29 | Bertl | se6astian: yup, that is what is planned
| |
16:29 | Bertl | gcolburn: the latest image is y-flipped, so the bayer pattern changes
| |
16:30 | Bertl | this will, as a matter of fact, be the default, but it is recorded in the sensor registers
| |
16:30 | gcolburn | is that an image other than the test one I was uploaded with the source?
| |
16:30 | Bertl | we won't be able to do X flips because we only have 32 channels
| |
16:30 | Bertl | http://vserver.13thfloor.at/Stuff/AXIOM/RAW/IT8_incand.raw16.xz
| |
16:32 | gcolburn | i'm looking up the mirroring in the spec right now
| |
16:32 | Bertl | (so what I'm trying to say is, that we can do RGGB and GBRG, but GBRG will be more common for normal images)
| |
16:33 | gcolburn | okay. you can specify either in the DNG, and you can also specify mirroring
| |
16:33 | Bertl | with y-flip enabled (sensor registers) the image is 'normal'
| |
16:34 | Bertl | with y-flip disabled, naturally the image is flipped
| |
16:34 | Bertl | (i.e. mirrored)
| |
16:34 | Bertl | this is the result of the coordinate system the sensor uses
| |
16:37 | gcolburn | if we embed the registers in the DNG private data we could put the correct tag in
| |
16:38 | Bertl | I'd definitely add the registers to the dng, we will need them later, but for now, a simple change to the other pattern should suffice
| |
16:45 | FergusL | hi gcolburn
| |
16:48 | gcolburn | I'll look at the new file and try to add the registers when I can
| |
16:49 | FergusL | wow you wrote DNG.py yourself I guess ?
| |
16:50 | gcolburn | yeah. its been a good learning experience to understand TIFF/DNG. To implement the full spec as a reader would be a lot of work. luckily we just need to write DNG files :)
| |
16:51 | FergusL | yes, very well done !
| |
16:51 | FergusL | can be reused elsewhere as well
| |
16:53 | gcolburn | does anyone have software that can read Cinema DNG?
| |
16:53 | gcolburn | when I was reading the spec, one implementation is just a sequence of DNG files numbered appropriately
| |
16:54 | FergusL | I too have made a small python script that reads the raw files, but I didn't think the struct module would work, but struct.unpack indeed is great
| |
16:54 | intracube_ | joined the channel | |
16:54 | FergusL | hi intracube
| |
16:54 | intracube_ | hey FergusL
| |
16:55 | intracube | left the channel | |
16:56 | intracube_ | changed nick to: intracube
| |
16:59 | gcolburn | my wifi connection is too slow where I'm at (not at home), so its taking forever to download the latest image. you could try this to change the bayer pattern. at the end of the CMV12000toDNG file before the write call paste this:
| |
16:59 | gcolburn | rawIFD.getTag('CFAPlaneColor').value[0] = 1 #G
| |
16:59 | gcolburn | rawIFD.getTag('CFAPlaneColor').value[1] = 2 #B
| |
16:59 | gcolburn | rawIFD.getTag('CFAPlaneColor').value[2] = 0 #R
| |
17:01 | Bertl | only 3 entries?
| |
17:02 | gcolburn | yeah
| |
17:03 | Bertl | nah, all red/blue now
| |
17:04 | FergusL | maybe by reading the file backwards ?
| |
17:04 | gcolburn | oh wait. there is a 4th
| |
17:04 | FergusL | I had issues with the Y inverted (or not) pages
| |
17:04 | gcolburn | rawIFD.getTag('CFAPlaneColor').value[3] = 1 #G
| |
17:05 | gcolburn | Does adding that fix it?
| |
17:05 | dmj_nova | se6astian: meeting with cmosis?
| |
17:07 | Bertl | gcolburn: not really
| |
17:07 | gcolburn | so the TIFF 6.0 spec supports defining the orientation(mirroring), but DNG states that TIFF/EP is not compatible with it, so we'd have to decide whether to try that route, or always just rearrange the data
| |
17:08 | Bertl | we cannot rearrange the data
| |
17:08 | Bertl | that will change the pixel positions/meaning
| |
17:09 | Bertl | we can always flip it, but that will require a mirror tag
| |
17:09 | Bertl | i.e. the original images were all mirrored
| |
17:21 | Bertl | rawIFD.getTag('CFAPlaneColor').value[0] = 1 #G
| |
17:21 | Bertl | rawIFD.getTag('CFAPlaneColor').value[1] = 0 #R
| |
17:21 | Bertl | rawIFD.getTag('CFAPlaneColor').value[2] = 2 #B
| |
17:21 | Bertl | rawIFD.getTag('CFAPlaneColor').value[3] = 1 #G
| |
17:21 | Bertl | this gives something which could be correct
| |
17:22 | Bertl | the colors are still terribly off IMHO
| |
17:24 | gcolburn | are you setting the white balance?
| |
17:24 | Bertl | no, I'm using display to display the image
| |
17:24 | gcolburn | i don't have any code to determine it, so its using whatever was in the original Canon image with its profile
| |
17:24 | gcolburn | that's probably why then
| |
17:25 | Bertl | good then add the tags above for now and we should be fine
| |
17:25 | gcolburn | what i do is I open it in a raw converter and select a neutral gray area and it looks beter
| |
17:25 | Bertl | btw, why can't we remove the canon info?
| |
17:25 | Bertl | and e.g. replace it by a neutral one?
| |
17:26 | gcolburn | we can do that. I just need to look at the calibration array details and set it to neutral
| |
17:26 | gcolburn | when I completely removed them photoshop and lightroom couldn't recognize the file
| |
17:27 | Bertl | I see, okay, so probably next task
| |
17:27 | gcolburn | for auto-white balance you can just run it through dcraw, which just has one source file to compile: http://www.cybercom.net/~dcoffin/dcraw/
| |
17:27 | Bertl | and please try somehow add the registers as binary blob
| |
17:27 | se6astian | dmj_nova, meeting with cmosis? yes, philippe and oscar will meet them tomorrow
| |
17:27 | Bertl | s/try/try to/
| |
17:27 | dmj_nova | ah, cool
| |
17:28 | Bertl | gcolburn: so that we can extract that information lateron
| |
17:28 | se6astian | you can look at the Elphel jp4 (jpeg raw variant) to DNG converter for reference:
| |
17:28 | se6astian | https://github.com/apertus-open-source-cinema/jp4tools/blob/master/JP4toDNGconverter/source/elphel_dng.c
| |
17:30 | se6astian | or this alternative implementation based on the adobe sdk
| |
17:30 | se6astian | https://github.com/apertus-open-source-cinema/jp4tools/blob/master/Movie2DNG/src/dngwriter.cpp
| |
17:30 | se6astian | line 262+ deals with bayer patterns
| |
17:37 | FergusL | (gcolburn: why python, if I may ask ?)
| |
17:39 | gcolburn | I tried to get the adobe sdk to compile and had problems with deprecated functions in 3rd party libraries
| |
17:39 | gcolburn | their sdk would probably be the best route if one wanted to read any DNG. but for writing I figured it would be simpler to just write some code
| |
17:43 | gcolburn | I'll definitely look at their code though. that would be a handy reference. thanks.
| |
17:46 | se6astian | the adobe sdk is rather slow as the author of the above code noted
| |
17:47 | se6astian | the first link of the two is based on a patched libtiff to write dng
| |
17:47 | se6astian | much faster
| |
17:47 | se6astian | but inconvinent as it requires an outdated libtiff to patch to compile the code
| |
17:49 | gcolburn | yeah. I started on a C++ version but I haven't had time to work on it. prototyping in python has been helpful
| |
17:50 | FergusL | a C++ version of the dng writer ?
| |
17:52 | gcolburn | yes
| |
17:52 | gcolburn | how import is it to be able to write the DNG without seeking?
| |
17:52 | gcolburn | important
| |
17:52 | Bertl | I'd say you can do that with a memory buffer in python
| |
17:53 | Bertl | just create the image with seeks first and then dump it to stdout
| |
17:53 | FergusL | you can map the raw file to memory and then seeking would be faster ? or is that irrelevant to the problem ?
| |
17:53 | Bertl | irrelevant, we are talking output
| |
17:54 | gcolburn | yeah I could try that
| |
17:54 | FergusL | ok
| |
17:54 | Bertl | gcolburn: is there a dng specific compression for the data?
| |
17:55 | Bertl | (lossless compression I mean)
| |
17:57 | gcolburn | I believe it supports lossless jpeg
| |
17:57 | gcolburn | "Two Compression tag values are supported:
| |
17:57 | gcolburn | â¢Value = 1: Uncompressed data.
| |
17:57 | gcolburn | â¢Value = 7: JPEG compressed data, either baseline DCT JPEG, or lossless JPEG compression."
| |
17:58 | gcolburn | the spec includes thumbnails though, so I need to check that applies to the raw data, not just thumbnails
| |
17:58 | Bertl | hmm, okay
| |
17:58 | Bertl | so we stick with .dng.xz for now I guess :)
| |
18:00 | gcolburn | yeah. I'd probably need to find a library to do the compression.
| |
18:01 | se6astian | forget the compression, its mapped to 8 bits, not worth the trouble to save a few MB of space
| |
18:02 | Bertl | hmm?
| |
18:03 | se6astian | compressed DNG uses JPEG with higher bit depths remapped to 8 bits
| |
18:03 | Bertl | 25222907 Nov 12 19:24 CMV12000_DNG_Writer/img.dng
| |
18:03 | Bertl | 14164816 Nov 12 19:24 CMV12000_DNG_Writer/img.dng.xz
| |
18:03 | Bertl | this is what I'm talking about
| |
18:04 | se6astian | ah, I see :)
| |
18:04 | Bertl | i.e. we want to compress the DNGs somehow
| |
18:04 | Bertl | either the data within the dng format (according to some dng spec)
| |
18:04 | se6astian | bash script?
| |
18:04 | Bertl | or the entire file, which can happen in the unix pipe, yes
| |
18:07 | FergusL | what do you mean by "seeking" ?
| |
18:10 | Bertl | the code currently writes the header, then the data and then updates the header information according to the data (simplified)
| |
18:11 | Bertl | to do that, it needs to move back (seek) to the beginning, which is not possible in a pipe
| |
18:11 | gcolburn | when you seek you tell it which byte offset in the file to go to.
| |
18:11 | FergusL | okay, got it :) thanks guys
| |
18:12 | FergusL | yes, I use seek in my py script as well
| |
18:12 | gcolburn | to write it without seeking, i would have to calculate all offsets to where the tag values and image will be in advance, and then write them out at the beginning. sometimes TIFF stores the value in the tag, and sometimes the tag points to the value, so pre-calculating all this would take a bit of handling different cases
| |
18:13 | FergusL | seems much clearer to me now, I understand what you were discussing now indeed
| |
18:13 | FergusL | I think Bertl suggestion is great
| |
18:16 | gcolburn | I got the orientation tag to be interpreted by photoshop
| |
18:16 | gcolburn | here's the code you can append at the end:
| |
18:16 | gcolburn | orientationTag = TAG()
| |
18:16 | gcolburn | orientationTag.tag = 274
| |
18:16 | gcolburn | orientationTag.type = 3
| |
18:16 | gcolburn | orientationTag.value = np.zeros(2,dtype=np.uint8)
| |
18:16 | gcolburn | orientationTag.value[0] = 4
| |
18:16 | gcolburn | orientationTag.value[1] = 0
| |
18:16 | gcolburn | orientationTag.count = 1
| |
18:16 | gcolburn | dng.ifd.tags[274] = orientationTag
| |
18:17 | gcolburn | this sets the orientation: orientationTag.value[0] = 4
| |
18:17 | gcolburn | 3 = The 0th row represents the visual bottom of the image, and the 0th column represents
| |
18:17 | gcolburn | the visual right-hand side.
| |
18:17 | gcolburn | 4 = The 0th row represents the visual bottom of the image, and the 0th column represents
| |
18:17 | gcolburn | the visual left-hand side.
| |
18:17 | gcolburn | there are other options as well
| |
18:18 | Bertl | k, great!
| |
18:18 | gcolburn | 1 is default
| |
18:22 | FergusL | you can create arbitrary files with mmap in python but you need the exact length
| |
18:22 | FergusL | or use resize() before each write() call
| |
18:24 | FergusL | (http://docs.python.org/2/library/mmap.html)
| |
18:29 | Bertl | stringio provides a file like class in memory
| |
18:30 | Bertl | i.e. it can be used like a file, but is held in memory, and can, at the end, simply be dumped to stdout
| |
18:30 | gcolburn | I've got to head out for a bit...
| |
18:30 | Bertl | k, cya!
| |
18:30 | gcolburn | i'll look into those options
| |
18:31 | gcolburn | left the channel | |
18:31 | FergusL | looks better
| |
19:05 | Sasha_C | joined the channel | |
19:08 | rexbron | Bertl: for the love of all that is holy, do not use the 8bit jpeg compression aspect of DNG. It destroys images.
| |
19:10 | rexbron | Bertl: the Blackmagic Pocket camera just got it's raw firmware update with lossless compression, likely a standard algo like the ones used in EXR compression.
| |
19:13 | Bertl | do not worry, we have no plans to use that :)
| |
19:14 | rexbron | :) phew
| |
19:15 | dmj_nova | yeah, not doing 8 bit jpeg compression
| |
19:15 | dmj_nova | (well we can't guarantee that nobody will add that as an option)
| |
19:16 | dmj_nova | because we really can't guarantee anything won't happen that its technically possible for a user with the right skillset to implement
| |
19:17 | rexbron | dmj_nova: I'm fine as long as it's not forced upon the user
| |
19:17 | dmj_nova | but we're definitely doing lossless raw
| |
19:18 | dmj_nova | I'd say lossless compression is a likely feature though
| |
19:19 | dmj_nova | which is basically the same principle as a zip file or a tarball, just using entropy encoding
| |
19:20 | gcolburn | joined the channel | |
19:21 | Bertl | rexbron: the beauty of open source/open hardware is that the user is not forced to anything
| |
19:22 | rexbron | dmj_nova: you do also need to make sure that any non-spec compression has vendor support, the largest of which is BMD and Adobe, or better yet copy what they do ;)
| |
19:22 | Bertl | even if the community or the developers do not support what you want or do not want, there is always the option to hire some developer/programmer to add/remove the parts you like
| |
19:23 | dmj_nova | rexbron: yes, of course!
| |
19:24 | dmj_nova | I honestly doubt we'd be able to keep lossless raw support off the axiom even if we tried
| |
19:26 | Bertl | the only reason I was asking was because it would make sense to compress the dng data by color channel with knowledge of the row length
| |
19:27 | Bertl | (and I would expect something like that to be part of the DNG specification)
| |
19:28 | Bertl | (still talking lossless compression here)
| |
19:29 | dmj_nova | Bertl: perhaps there's a mode that separates the planes?
| |
19:29 | Bertl | I'm pretty sure there is, doesn't help much with external compression though
| |
19:30 | dmj_nova | Bertl: what do you mean external compression?
| |
19:31 | dmj_nova | I mean that many raw formats compress their data
| |
19:31 | Bertl | if there is no lossless compression in dng working on the image data, then I need to compress the dng as binary blob
| |
19:32 | Bertl | if we talk about 'our own' raw format, then we can do whatever we like of course
| |
19:34 | gcolburn | Here is what the DNG spec says: "For lossless JPEG, the internal width/length/components in the JPEG stream are not required to match the strip or tile's width/length/components. Only the total sample counts need to match. It is common for CFA images to be encoded with a different width, length or component count to allow the JPEG compression predictors to work across like colors."
| |
19:35 | gcolburn | CFA=Color Filter Array (Bayer)
| |
19:36 | Bertl | okay, so that might be an option after all
| |
19:36 | gcolburn | the DNG spec doesn't say much else
| |
19:37 | dmj_nova | dng allows for lossless jpeg compression, which should give about 2.5:1 reduction in size
| |
19:38 | dmj_nova | hmm, that may mean we need to do two planes of green?
| |
19:40 | Bertl | well, it's probably better to keep the two green channels separated anyway
| |
19:41 | Bertl | (they will overlap when binning is used)
| |
19:41 | FergusL | I'm not quite following everything here !
| |
19:42 | Bertl | not that important, mainly speculations and hand waving ... but if you have specific questions, just ask
| |
19:43 | dmj_nova | I'd rather avoid having our own raw format unless it provides a clear and tangible benefit
| |
19:44 | dmj_nova | like say reducing file size on lossless compression by a factor of 2 or something
| |
19:44 | dmj_nova | which I doubt is possible unless somebody designed DNG in a very stupid way
| |
19:45 | Bertl | I'd say a factor of 50% would already be a good argument :) but anyways, I agree, if existing standards can cope with what we need/want, then we should strive to use them
| |
19:45 | Bertl | (50% = reduction to 2/3rd)
| |
19:47 | dmj_nova | yeah
| |
19:52 | FergusL | Bertl: so how is it going with the IT8 chart ?
| |
19:52 | Bertl | not working on the IT8 ATM, I've done the incandescent snapshot and that's it for me (ATM)
| |
19:53 | Bertl | it's up to you folks to make heads and tails out of it now :)
| |
19:53 | FergusL | cool !
| |
19:53 | FergusL | it's in the same folders as others ?
| |
19:53 | FergusL | (haven't checked this channel much for the past few days)
| |
19:53 | Bertl | in the raw folder, yes
| |
19:57 | rexbron | Bertl, dmj_nova: BMD have implimented the lossless Huffman part of the cDNG spec
| |
19:57 | FergusL | Bertl: do you have a color temperature value for the incandescent source ?
| |
19:57 | dmj_nova | rexbron: yes, that's likely what we'll do as well
| |
19:57 | Bertl | nope, but the guess around 2900K is probably valid
| |
19:58 | dmj_nova | only possible deviation would be if there's a way to achieve significantly better compression than lossless huffman
| |
19:59 | dmj_nova | which I suspect is only possible if they're blocking data for huffman in a stupid way or in pathological corner cases
| |
20:00 | rexbron | dmj_nova: Even if that was the case, adding an extra step in your post workflow until it gains standard status and then having to get vendors to support it stack the deck against you.
| |
20:00 | dmj_nova | rexbron: right
| |
20:01 | dmj_nova | I'm not saying we intend to switch even if there is a way.
| |
20:01 | [1]se6astian | joined the channel | |
20:01 | rexbron | The only reason ML gets away with it is because, as I understand it, they are directly dumping memory to disk and that needs to be converted into something that is recognizable as an image
| |
20:01 | dmj_nova | and that could again become an *option* for say shooting longer with the same cartridge
| |
20:02 | rexbron | dmj_nova: sure but also consider the context of production. You aren't going to be shooting uncompressed or even lightly compressed raw for documentary.
| |
20:03 | rexbron | The feature I shot was 10Tb of camera originals by the end of the 8 day shooting schedule
| |
20:03 | dmj_nova | *cough* russian ark
| |
20:03 | rexbron | dmj_nova: different beast entirely
| |
20:03 | dmj_nova | though that's a corner case again
| |
20:03 | rexbron | that's more factual than documentary, semantic difference but important
| |
20:03 | se6astian | left the channel | |
20:03 | [1]se6astian | changed nick to: se6astian
| |
20:03 | dmj_nova | most features, you're quite correct don't need that
| |
20:04 | dmj_nova | right now the "custom raw format" thing is just a thought experiment
| |
20:04 | rexbron | I'm not entirely up to speed but has the team defined exactly who the audience is for Axiom?
| |
20:04 | rexbron | dmj_nova: sure, experiment away :)
| |
20:05 | dmj_nova | probably the best test is just break a few images down in different ways and compare size to what the cinema dng allows
| |
20:05 | Bertl | I don't think we need to 'define' the audience, we will simply see who shows interest
| |
20:05 | rexbron | troy_s_ could talk at length on context in design
| |
20:06 | rexbron | Bertl: unfortunately you do. You can't change camera ergonomics easily or cheaply. Pros don't scream loudly, amatures and hobiests do. Blackmagic's forums are proof enough of that.
| |
20:07 | rexbron | Pros find tools that work for them. If it doesn't present it self that way, it gets passed on.
| |
20:08 | dmj_nova | rexbron: Bertl: it really does need to be a highly useable tool for filmmaking foremost
| |
20:08 | dmj_nova | good ergonomics and workflow
| |
20:08 | rexbron | Here is a link to my BMCC rig, http://imgur.com/Rp7Z9bt
| |
20:08 | rexbron | The camera is one of the least expensive parts there
| |
20:08 | rexbron | the actual body I mean
| |
20:09 | Bertl | rexbron: well, I guess then the pros have to start speaking up if they want to shape the axiom :)
| |
20:09 | rexbron | Bertl: that's why i'm here ;)
| |
20:09 | Bertl | I thought so :)
| |
20:10 | rexbron | http://www.aaton.com/images/delta-700c.jpg
| |
20:10 | rexbron | probably one of the most ergonomic cameras ever designed
| |
20:10 | rexbron | too bad it bankrupted Aaton
| |
20:10 | dmj_nova | rexbron: what did you feel made it ergonomic?
| |
20:11 | rexbron | dmj_nova: Notice how it's curved, meant to put the center of balance below the shoulder, not above it
| |
20:11 | rexbron | ergonomic for handheld I should clarify
| |
20:12 | rexbron | notice how the viewfind is integrated into the body but ajustable
| |
20:12 | rexbron | notice how all the controls for the camera are on the opposite side (camera right) to the oporater, the camera is meant to have an assistant
| |
20:13 | Bertl | maybe it might be a good thing to put the various aspects together in a document (via email to the mailing list or probably even better on the wiki?)
| |
20:13 | rexbron | Bertl: sure
| |
20:13 | dmj_nova | rexbron: so it's designed to be ergonomic for a 2-3 person team to use?
| |
20:13 | rexbron | dmj_nova: yes
| |
20:13 | Bertl | btw, are there 'left handed' camera(wo)men?
| |
20:14 | rexbron | Bertl: there are left eyed camera ops, but the camera is always on the right shoulder. Totally convention, no other reason other than right-handed domanance
| |
20:14 | dmj_nova | personally, I would like to see the axiom as having a "brain" and a "shell"
| |
20:14 | dmj_nova | so you have a very small unit that houses sensor
| |
20:14 | rexbron | dmj_nova: that sounds like an epic and epics are terrible to work with in production
| |
20:15 | dmj_nova | and a shell that the user interfaces with
| |
20:15 | rexbron | the image is great
| |
20:15 | dmj_nova | I think that may be a result of a terrible shell
| |
20:15 | rexbron | but all the ergonomics of the camera were sacrificed for 3D
| |
20:15 | dmj_nova | explain that last bit?
| |
20:15 | rexbron | the Epic was designed to be the smallest it could be to shrink the size of 3D mirror rigs
| |
20:15 | Sasha_C | left the channel | |
20:16 | rexbron | as a result, the camera has no mounting points for accesories
| |
20:16 | rexbron | or anything, not even a battery without extras
| |
20:16 | rexbron | great for modularity, terrible when the director wants to go from studio to handheld and it takes 5 minutes,
| |
20:17 | rexbron | and they are complaining about how their assistants aren't working fast enough or hard enough
| |
20:17 | rexbron | I'm not saying that there isn't a place for that form
| |
20:17 | dmj_nova | rexbron: you mean because you have to take everything apart and put it all back together?
| |
20:17 | rexbron | dmj_nova: yes
| |
20:17 | rexbron | in the photo of the rig I posted, my BMCC
| |
20:18 | rexbron | also consider cost, do you want to put that into a body that just works or do you want to create a secondary ecosystem for camera accessories to make your body work with the exisiting equipment standards
| |
20:18 | Bertl | looks futuristic!
| |
20:18 | rexbron | Bertl: the epic, Aaton or BMCC?
| |
20:18 | Bertl | (at least to me :)
| |
20:19 | Bertl | your rig
| |
20:19 | rexbron | hah
| |
20:19 | rexbron | it's a pain in the ass that cost me more than the body
| |
20:19 | rexbron | and it's a decent one lol
| |
20:20 | dmj_nova | rexbron: my own thoughts for a "shell" system is that the shell should be a complete and singular thing
| |
20:21 | Bertl | rexbron: do I see that right that it has 3 displays?
| |
20:21 | rexbron | another example of Aaton's style of design
| |
20:21 | dmj_nova | and the "brain" just plugs in and is interchangeable with separate bodies, even if a given user never wants that.
| |
20:21 | rexbron | Bertl: two, the built in touch screen and SmallHD AC7
| |
20:22 | rexbron | dmj_nova: that could be great but there in lies many design challenges
| |
20:22 | Bertl | rexbron: what's the thing on the right side?
| |
20:22 | rexbron | Bertl: hinged V lock battery plate by viewfactor
| |
20:23 | Bertl | ah, so that's the battery ..
| |
20:23 | rexbron | Yes
| |
20:23 | dmj_nova | rexbron: have you seen the axiom modules concept?
| |
20:23 | rexbron | dmj_nova: I have from the website, my concern is mechanical robustness
| |
20:23 | dmj_nova | Yes, I have a feeling we'll be learning more about that quite soon
| |
20:24 | dmj_nova | I believe se6astian has just ordered some housing pieces.
| |
20:24 | dmj_nova | am I right on that se6astian?
| |
20:24 | rexbron | dmj_nova: Production is hard on cameras. What material are you looking to have them made out of?
| |
20:24 | dmj_nova | not sure what the final plan is
| |
20:25 | Bertl | for now, we are still working on the prototype
| |
20:25 | Bertl | which will get a shoe box :)
| |
20:25 | Bertl | (a fancy, transparent shoe box, but nevertheless a shoe box :)
| |
20:26 | dmj_nova | rexbron: I'd imagine that a shell would fit around that assembly in the concept
| |
20:27 | rexbron | Bertl: the first engineering prototype of the Red One was in a wooden box :P
| |
20:27 | Bertl | so we are already far ahead of that then :)
| |
20:27 | dmj_nova | rexbron: you mentioned it's hard to go from handheld to studio mount with the RED, what is the difference in setup between the two (other than I assume having to exchange shoulder mount + handles for a tripod)
| |
20:28 | rexbron | dmj_nova: depending on the production, studio mode may consist of just a tripod, so having an arri standard dovetail and shoulder brace makes it fairly quick
| |
20:29 | rexbron | but say your on a production zoom like an Angineaux 24-290 or 28-340. Those lenses weigh 25-30 lbs by themselves.
| |
20:30 | dmj_nova | note to self: never put a production zoom on my moco rig
| |
20:30 | rexbron | so you need to switch matte boxes (from say a 6x6 to a 4x5.65 clipon), lenses and a few other tings
| |
20:31 | rexbron | Take my rig for example
| |
20:32 | rexbron | Because of how small the body is, how small the lenses are, and where the monitor needs to be for me to see it, all the weight is over my hands
| |
20:32 | rexbron | it's not balanced at all
| |
20:32 | rexbron | It makes operating a more taxing experience that it needs to be
| |
20:32 | rexbron | but since that rig is nearly all alluminum, it already weighs 25lbs
| |
20:33 | rexbron | I can look at remounting the battery to the back on longer rods to compensate a bit
| |
20:34 | rexbron | but you get into rediculus dslr style rigs
| |
20:34 | dmj_nov | is a dslr shooter and avoids stupidly ridiculous rigs
| |
20:35 | dmj_nova | So you're saying that weight distribution is key
| |
20:35 | rexbron | yes
| |
20:35 | rexbron | also by lowering the center of gravity to below the shoulder, you get less shake
| |
20:36 | rexbron | more fluid larger movements and less judder
| |
20:36 | rexbron | http://www.ocon.com/inspiration/labs/rod-standards-explained/
| |
20:36 | rexbron | ^ Side note, clearest explaination of the different rod standards in cinema
| |
20:37 | rexbron | In North America, the east cost uses 15mm studio offset and the west cost uses 19mm. troy_s_ does Vancouver use 15mm or 19mm?
| |
20:38 | rexbron | 19mm is nomially stronger but means you need to carry two sets of rods for studio and lightweight
| |
20:38 | rexbron | Axiom, be it with a shell or not, should adhere to those standards to accessories just work
| |
20:38 | rexbron | s/to/so
| |
20:43 | Bertl | not sure what standards there are (to accessories)
| |
20:44 | Bertl | but I don't see any reason not to follow standards if they are open
| |
20:45 | dmj_nova | yes, we should support standard accessories
| |
20:45 | dmj_nova | rexbron: why is the RED bad with the rod system and accessories?
| |
20:46 | mikkael | joined the channel | |
20:46 | Bertl | welcome mikkael!
| |
20:53 | rexbron | dmj_nova: Mostly my complaints come as an assitant. You rent a Red from an owner operator and it's missing half the things you need to make it functional.
| |
20:53 | rexbron | when getting a camera from a rental house, they have all that stuff
| |
20:54 | rexbron | is Axiom including rental houses in their target audience?
| |
20:55 | Bertl | we are not excluding anything atm
| |
20:58 | dmj_nova | so it's got rod compatibility, but it doesn't come as a functional unit?
| |
20:59 | dmj_nova | why wouldn't the operator have all the needed things?
| |
20:59 | rexbron | huh, I can't save an edit to a discussion page on the wiki without getting into a captcha loop
| |
20:59 | rexbron | dmj_nova: because they bought a ferarri but don't have any money left for tires
| |
20:59 | dmj_nova | ah
| |
21:00 | rexbron | it's happened so often in Toronto
| |
21:00 | dmj_nova | then how do they use it, just making do with minimal stuff?
| |
21:00 | rexbron | like a big dslr
| |
21:00 | rexbron | Canon EF mounts on the epic is the biggest culprate
| |
21:00 | dmj_nova | ah, yeah I could see people doing that
| |
21:01 | dmj_nova | so like a big dslr with worse ergonomics than the Canons
| |
21:01 | rexbron | Bertl: re: rod standards, they are just physical mesurements
| |
21:01 | rexbron | dmj_nova: yup but the operators try to get full rate for the rental
| |
21:03 | dmj_nova | so they're renting out the body-only as a complete-package
| |
21:04 | rexbron | as little as they can get away with
| |
21:05 | rexbron | http://mythofcapture.com/the-cat-and-the-box-part-1-of-3-an-essay-on-cameras-form/
| |
21:05 | rexbron | great essay on camera egonomics
| |
21:05 | rexbron | much more on the art aspect of design
| |
21:07 | dmj_nova | I will say that DSLRs have brilliant ergonomics for a box camera
| |
21:07 | rexbron | Does a wiki account need to be activated?
| |
21:07 | rexbron | dmj_nova: for stills, not for motion
| |
21:07 | rexbron | if they had the same optical viewfinder in motion, I'd be more likely to agree with you
| |
21:08 | rexbron | and that's not to say it can't be done
| |
21:08 | rexbron | but you just can't replicate the feel of a 35lbs camera balanced on a shoulder. That's what cinema handheld looks like
| |
21:08 | dmj_nova | the hardest part is stabilization and follow focus with them
| |
21:09 | dmj_nova | Oh, not saying DSLRs are good at replicating that
| |
21:09 | dmj_nova | they're much better at the things that a cinema camera on the shoulder isn't good at and vice versa
| |
21:10 | se6astian | rexbron, did you manage to save the wiki page?
| |
21:10 | rexbron | nope, got a message saying the link I posted was blacklisted
| |
21:11 | se6astian | the captcha is normal, hmm thats mollom then
| |
21:11 | se6astian | let me check
| |
21:11 | rexbron | se6astian: it's the link I pasted above
| |
21:13 | rexbron | With future capture power arriving in smaller camera bodies we increasingly have to choose between two types of camera form and two distinct operating possibilities: Box or Balance. Rigid stabilization, tripod or otherwise, will limit some of the differences between these two forms. However, if weâre departing from stabilization weâll have to make the choice between capturing with a Box Camera in our hands, or a Balance Camera on our shoulder. A
| |
21:13 | rexbron | form cannot be both things at once, in capture we will have to choose one.
| |
21:13 | se6astian | can you save the page just without the link?
| |
21:13 | rexbron | To pull a quote from the intro
| |
21:13 | se6astian | I moved you into the "emailconfirmed" group
| |
21:13 | se6astian | maybe that lightens the limits
| |
21:13 | rexbron | ues
| |
21:13 | rexbron | yes, I can post now
| |
21:14 | se6astian | great
| |
21:15 | rexbron | se6astian: Does the captcha happen every edit?
| |
21:16 | rexbron | ok, well I need to head out to dinner with some friends. It was great chatting with you all!
| |
21:17 | dmj_nova | rexbron: chat again, I learned quite a bit
| |
21:19 | se6astian | yes the captcha is always enabled
| |
21:19 | se6astian | we have zero spam since implementing that ;)
| |
21:20 | dmj_nova | se6astian: So I think we may need to design separate "shells" for Box and Balance
| |
21:26 | se6astian | sorry I was busy and have not follow the discussion, can you make a summary/proposal to the mailing list?
| |
21:27 | se6astian | time for me to go to bed
| |
21:27 | se6astian | good night!
| |
21:27 | se6astian | left the channel | |
21:28 | gcolburn | left the channel |