ELF(|4(//C-p8`@0VF<4@PdP<0@SP@ `@0S@C-p4`<0VF@8@PdP@0@SP@ `<0S@O-RM`0 P@pPw0 0SY@]  @P   ` ? UD00S @ 0SY$   P `@ UD0`0SH0L0Ѝ P @ U @@P  ? TڤH0@-8@4 <0M  D0CfЍ@-M @$00l  l 0TЍA-Q@ `qPU`P`WPAPC- M"r0PPv 1wa+4@

jZ;HJ @ `(`F @ P,T P`+0_T(0@n/`0 #<<,0lS<0n/ T, P`ڤ8@CPPPC`@P 0jj 0a s/ݍ Ѝ0adq[ `10  0`1t 4p8  ,Ƞ-t10p@d?'?C/AbW0`  - 10 $ p<0,0}00,Asp\࠱C1nA$ , 0 0 Pz,BT Qgfff@C@@C8zDdMb|8@-t@tPp @d P@@@P P(0@@($$ 8\chu(00S00Ps//O-M@P`"2p- 2"- ---- "@T000ŕP l" P T2@Ÿ P `(" `[ q*0[8 @P@ P  0P0x1!"`&  P-U-- -- 00 Z@0PP U)  0 @ ` @`-[*P   10 1H0 U8@00S0i ЍBQ@-<0 10ASaZ0K@WAAP@-80'0ASa0@A_7@-T@P0S  08*00U 0S d Ѝ0{0S/00S/0C-X0MS/ P `U  0p 0,@P `dh 0` 0`P404 @.b$0Ѝ@-P @ @'@-840 ,( $e@huA-LALLqLaLQ   ]   ]   ]   ]   ]A|u@-p@nh@-tpt`tpPp@p  eW  ]@Kuh@-00S K}}K} @u0 @-R3 00S/ 0 @R* P' }P" P d0S@Pd@TO-0M0: ? QA` V q`PPP@`pP`Pp` 0X`p:00!0 @`p T1 0  T F 0I  000 0@ `pЍ\CO-@P` p Pp P p  `@pX ЍA- Mp`>0 ->@PP-.0T 0-.PP-.0d# PD|1- #@lh1T\@`T" -0PPQPP000 P0 @.b0@#0H M?0@U0\0H>H^\ M`8S8`L`@`X`<`d`n4 \*~ p 䍟Q 0 P-=pW  P = Z = VZ =x Pp Pp p p p @-= =,` >V PZ < @pT<  <`P X LT2PadA2@D|Pd0kdA2 R !@$"R P DE P P  @ @ P P P 0P}00t |0 0| 0x0yxL lPxt@PE@Pp PԊP\T0S  ppP\zPp +:Pq0X PA0 9`V89  9@0PdU0 @ 0EL P0P` 0q Wa0X`Y BSX`0 BS pR` 0P S࠱ L >R 0PN1EPL0PP RP` 0aPA XqXp Z0CUXP0CQPS ^L`P =`pPxwPpp\TP 8(PPWPP 00.0 -0@pTJp@. = 嬦堆p}A Pd}A . =`P`PZ@P p@p PLP 5@(pPuPpp\TQj Q P〤 P : T RL 0[P P  T0S3 LP㘃P @`lpPd[ L2BPpp$2pR0Z 00Zjd@ T0` d DY00Yi `d\0dX XXh0LdH0dVV`fddW@DTPWpgP``\PH0` P0X`L0PP0` $(0P4@,dd8@ 0<d@0P >P @pT0@ P 0 0ߍ;6%P N5?4D%I=3D BC@F8@C #<BO-,M$ X P  :P T0T0P 00X0  *00P 0Ccp$ W 0  pP P @P P `pPpPpQ pT   P  P pXPPpP:p p0p P 0`$ VV0p`0T 0 0 0 0 0   0P0 0 0P0  X  PPp P \0 ,ЍO-aM  ,<P|6  @ |0P@s@x<@8P4`@p PP*00.0@N0@@ 0 \%00' '@@ 0@@,%0@@ 0\EN N% 00@`@PDP@:00> @<`@PCP@:00.@0U P`|PPhSPP 0"83@P ``$P|p0 0e48C8"83`VPe""`PePxp0 0e48C8"2`VPel"l"`PePx0 e0`48C8 "`2VPe""`PePxp0 0e48C8!1`VPe!!PeP`d|!000 `@P|`p0 @Px`P0@Pd0@T\p` 8/3'N0urs}zD/u\::HC@D`A88C' B h@Z H0 ` pX@XP}<0h@Y00Yi   0 ^ `$` p $  [  [k 0d0 d Z00Zjd 0d l Yࠡ࠱Yi 0dp0d X(L tdtd W@Wpgt````````P `` ``$`l `tp0(`0 L d`408 ,`<@DHP@dTX0`0- L3\PTCX#0$00`0xxx# 0`x|aߍ80@PaPc \`hP8X[00/+/Bd0 400 dZ  40Zj d d  7||7ZK/tl'0 0->40<c   YYid d X00Xhd 0dA/t6H̆\6 ('<}0 XPXhP   5-EP 0S eZ |5|D&5@P/P 1S '0%@ %%85PP  $P`z `<V > 0Z?Z 4`%x80@ Z  c0wCV Z>00 ZZ d4 4' 4 P) C1Sk cFE  P  0 0 P P  0P 0 T 0SLTPPUP`PaP``TLHPP4QPP  P 1S P 1S% )+%@oB.\8 ;6''%I= BCC+0744Dl`A3Dpt{^_Dq0P 0M?x@p`P` PP` P08<0 }0 400@HTL8T@d0 40 $ 0p `q  (1D, |1@84<0<@01DPo < 2PidA2@P@0jdA@P`Pehb 040 0 408280  `40 88400 D `0S 0C1a  P  P QPEB_A&_A&lPBXA@DBOAOA@BV/@qaA TpWP xC1SW OPT>0 ->@S-.U0PETPeq00n_0 @L/T4 @Th@T -PPTPP004 P4 @.b4@k?P* 1S  a5P 1S T@PdP%000`U2 l5@Tx%5`P %55  Wߍ `@2 5autodetect_white_level  raw_diag_taskraw_diag.c0[WL] peak at %d:%d (count=%d+%d above=%d left=%d,%d,%d) [WL] peak confirmed. Canon EOS RAWSAMPL.DATDebugraw_diag_task-%d.ppm.ppm%sraw_diag/%s%04d/%s%sSaved %s.ReleaseExpoMini ISOISO registersCMOS tweakRAW DiagnosticsRaw diag...%dEV%s %s, %s ISO %d %s %s%d.%dNoise curve (EV)SNR curve (noise profile)Please take one more test picture of the same static scene. Use the same settings, a solid tripod, and 10-second timer.You may need to solder some RAM chips :(Sampling data... Fitting SNR curve... Measured OB noise: %s%d.%02d DN Model read noise: %s%d.%02d DN Model gain : %s%d.%02d e/DN Apparent read noise: %s%d.%02d e Full well capacity : %d e Dynamic range : %s%d.%02d EV a = [%d ]; b = [x = [y = [R = mod(x,2) == 0 & mod(y,2) == 0; G = mod(x,2) ~= mod(y,2); B = mod(x,2) == 1 & mod(y,2) == 1; plot(log2(a(R)), log2(b(R)), '.r'); hold on; plot(log2(a(B)), log2(b(B)), '.b') plot(log2(a(G)), log2(b(G)), '.g') wa = prctile(a(:), 99); wb = prctile(b(:), 99); disp(sprintf('Exposure difference (median): %%.2f EV', median(real(log2(b/wb)-log2(a/wa))))) clip = median(a(b>wb-200 & b Exposure difference (median brightness, or from clipping point).Compare 2 Shots HLSame analysis, but zoom on the highlights when plotting (top 4 EV).You need something overexposed in the image (e.g. a light bulb).Dark Frame NoiseCompute mean, stdev and histogram from the entire image.Make sure you take a dark frame (with lens cap on).Dark Frame GrayscaleRender the raw image as downsampled grayscale (reveals FPN).Dark Frame FPNFixed-pattern noise (banding) analysis.Dark Frame FPN xcovCompare FPN between two successive dark frames.You will have to take two dark frames (with lens cap on).Optical Black + DRFrom OB: mean, stdev, histogram. Also white levels and DR.Optical Black ZonesPROP_GUI_STATEanalysis.ob_zonesanalysis.cmp.hlanalysis.cmpanalysis.jpganalysis.noise.x2analysis.snr.x2analysis.snranalysis.dark.fpn.xcovanalysis.dark.fpnanalysis.dark.grayanalysis.dark.noiseanalysis.ob_drscreenshotenabled-Please wait... (crunching numbers)OB errorOptical black: mean %d, stdev %s%d.%02d White level: %d (%d) Dyn. range: %s%d.%03d EV %s, %s, ISO %d %s %s%d.%dEntire image: mean %d, stdev %s%d.%02d (assuming it's a dark frame)%s, %s ISO %d %s %s%d.%d%d(& Q  = T pp ` P @ 0  Z X    \ q   6 t ? n }  I'=~  _;L BV\"1CS` m\X{wo7+}eZHjenkins@nightly Build user2017-10-08 20:00:55 UTCBuild date2fa32bd on 2017-10-08 19:01:39 UTC by alex: raw_diag: copy the raw buffer before saving it Last updateTechnical analysis of the raw image data: * Optical black analysis: mean, stdev, histogram, dynamic range. * Dark frame analysis: same as OB, take a picture with lens cap on. * SNR analysis: plot a SNR graph from a defocused image that covers the entire tone range (from dark shadows to overexposed highlights). TODO: * noise autocorrelation, trend * detailed raw histogram, zoom on shadow and highlight areas. * SNR colors; option to reference the SNR graphs to the scene: http://theory.uchicago.edu/~ejm/pix/20d/tests/noise/DRwindow1d3.png DescriptionTechnical analysis of raw image data. Noise, DR, SNR...SummaryGPLLicensea1exAuthorRAW DiagnosticsNameGCC: (GNU Tools for ARM Embedded Processors) 4.8.3 20131129 (release) [ARM/embedded-4_8-branch revision 205641]A&aeabi5TE YO)I-/J,OLLMNMIE rutu+*.113J22khk.symtab.strtab.shstrtab.rel.text.rodata.rodata.str1.1.rodata.str1.4.rel.data.rel.config_vars.rel.module_strings.bss.comment.ARM.attributes.module_hgdiff@V  %WT-2dW<2tkOl K Y`vU jPwf x zz0zqpe{'{J{x (`  %B3pB,UbHv 4(/9DY^g"vH  '/8JP"_hu `(#/=K]kuz -:FPVby#0>LO^gv $+4Oret_0raw_diag_deinitraw_diag_initraw_diag_taskiso_experimentdummy_test_brackettest_bracketsilent_zoom_bracketraw_diag_poll__module_config_raw_diagget_video_mode_namelens_get_from_other_picstyle_color_tonestrcpyprintfclrscridle_globaldraw_disSW1__module_prophandler_raw_diag_0x80020000draw_line__mem_freerun_in_separate_taskpowfsnprintfraw_lv_requestmenu_open_submenu__aeabi_faddget_picstyle_nameNotifyBoxHidesqrtffont_small__module_strings_raw_diagcallmemcpy__aeabi_fcmpgtlv2rawroundf__aeabi_i2fml_assert_handleris_filefont_medraw_update_paramsbm2lvraw_lv_releasemenu_add__aeabi_fsubNotifyBox__aeabi_fcmpge__module_prophandler_raw_diag_0x80020000_block__module_cbr_raw_diag__aeabi_fcmpledisplay_is_on__aeabi_idivredraw__module_prophandlers_raw_diagset_lv_zoomis_movie_modebmp_draw_rectimage_review_timeFIO_WriteFileread_filerandlens_get_from_other_picstyle_saturationcamera_modelraw_get_pixel_exstrncmpraw_infotake_screenshotlens_get_from_other_picstyle_contrast__aeabi_f2izfill_circle__aeabi_fdiv__mem_mallocshamem_readgui_statelog2ftask_create__module_info_raw_diagget_shooting_cardget_yuv422_vrammemset__aeabi_l2fFIO_RemoveFileidle_globaldraw_enbmp_putpixelvram_lvbmp_printfget_file_prefixlens_format_shutter__aeabi_fcmpeq__aeabi_fmulFIO_CloseFileraw_get_pixellvFIO_CreateFiledump_seg__aeabi_fcmplt__aeabi_uidivmodbeeplens_set_rawshutterlens_infoget_halfshutter_pressedbig_bmp_printfdraw_circlestrlenlens_get_from_other_picstyle_sharpnesssave_dng__aeabi_idivmodmsleepbmp_fillmenu_set_value_from_scriptbmp_string_widthPgl0x0RMg00$RDMgK0 \R<gXK`0h8pe|%R(g08e% gXRM %40HRX8`el%R(0S1[??Hp?M 4adda/Pe/PTpaac$ a4 [@ eP 8\ kp P % - P g< xH ? ? x " z$ aP e` 8l k| P % - P x4 a< 0D 8H VT V` 8h el /p P a a  c a M      3   o    0LPL`sx]7JhUe8(%@SXSl[|[????,8@0PRd-x-8eRP_[[@?X?p??g0% M. 5h?tM?MWw(,0 X"s"bY"2N4a@DHLPT)\dCtwx#6w+wmw]yyn 8yHyXy`nxyyynyyynyyy n8yHyXy`nlptx|mw]mw]yyn yy$n04<@D\mdwty|BwBwwByh4pDwHpTm`9dptw|'wm#pw6m^@#h(DL=d:|-k0e8R%P84RP?`0p8xee%P8eTdxd!e(Re%(V8% <x\|?aR0e = :0PLlaxc?v a,D)LPoTX\4S`,taa[[[[[S SD ap a H l H l!g$!gH!gd!g|!g!e!8!:"V"V$"84"e@"eL"=`":p"P|"0"8"e"e"8"=":"P#_ #%#/#PD#eH#P\#e`#P#w#ax$0$e\%0h%e%8%e%e%=%:%P%0%8%e&e&8(&=<&:L&P`&Q&R&H&v&0&e&%&H&v&0'e'%8'k\'e'!'e'('R'e'%'('V'8'='V'8(e(e (=4(:D(PP(0l(8t(e(v(8(=(:(P(_(V(8)e)8$)=8):H)PX)_p)8x)e)8)=):)P)_)%)0)8)V)k*e$*V,*e@*eT*eX*/\*Pt*8|*e*/*P*e*/*P*e*/*P*e*/*P*e*e*/*P(+?<+vd+?t+v+?+v+?+vX,?h,v,q,,,,,M,,,,- --3$-H-d-l-p--D-.=,.=@.:T.:l.-.k.0.0.e.8.R.%.0/=/:(/P4/0@/0L/e\/8h/Rt/%/=/0/:/P///8/R080R400D00X08l00|0e0e0%000=0:0P18101e(1e41%@1=P10`1:p1P1_11a1S2S$2G2H2l2H2lt3gx30383P3x3x3S4SP40T4V404V4S404V505V(5805e45/85P50586V 60686V$686Sh60x68686-686k70787V707V78880 8Vd88t8R888R8k888e8e8=8:8P9 9e(9%49=H9:X9Pt99% :0(:8,:V8:8@:eP:8\:Rh:=|:::P::8:V:8:e:8:R:%:= ;:;P<;L;0P;V\;8d;et;8;R;=;:;P;r;S;<"@<"X<"<"<"<"<"=",="\="="="=b=Y="=i=F=f= >0$>VP>0T>Vp>0x>R>8>%>>>>>M??? ?$?(?,?0?8?HCwTCwXC4lC9C%C8CPD%DPDDDDcD?DvEa4EaEgE? F?(FvHF_`F_xF_F_F Ga,GS@G[hGxGeG/GPGRGeG/GPG?Hv@H?PHvhHa|HaH[HxHeH/HPIRIe I/IP4I?DIvtI?IvIaIaIIcJ?Jv0Ja8J`JtJaJSJ[J[JSKG