write image , tfrecord

https://blog.csdn.net/index20001/article/details/73843070

https://tensorflow-notes.readthedocs.io/zh_CN/latest/tfrecord.html 

https://segmentfault.com/a/1190000011510838  

 

    -  scipy.misc.imsave 方法可以很容易的将 numpy 数据存成图像格式,且基本没有大小限制。

    -  读图的时候是用 tensorflow 的函数,存图像用的 scipy.misc 的 imsave 函数。

    -  step:

       

import numpy as np
import skimage.io as io
import scipy.misc

test_img = io.imread('./27434_20180523_EU_NCAP_Part1.png')
test_string = test_img.tostring()
reconstructed_test_1d = np.fromstring(test_string, dtype=np.uint8)
scipy.misc.imsave('reimg1.png',reconstructed_test_img)

  

 

 -  log:           

 


>>> import scipy.misc
>>> test_img = io.imread('./27434_20180523_EU_NCAP_Part1.png')
>>> test_img
array([[[121, 125, 122],
        [121, 125, 121],
        [122, 125, 120],
        ...,
        [102, 119,  92],
        [ 73, 110,  40],
        [ 59, 106,  14]],

       [[122, 125, 122],
        [121, 125, 121],
        [122, 125, 120],
        ...,
        [ 97, 115,  89],
        [ 72, 108,  39],
        [ 60, 105,  14]],

       [[123, 125, 121],
        [122, 125, 120],
        [121, 125, 120],
        ...,
        [ 86, 105,  84],
        [ 70, 104,  36],
        [ 62, 104,  13]],

       ...,

       [[118, 122, 118],
        [117, 122, 117],
        [117, 122, 117],
        ...,
        [ 45,  51,  55],
        [ 18,  27,  24],
        [  5,  15,   8]],

       [[117, 122, 117],
        [116, 122, 117],
        [116, 122, 117],
        ...,
        [ 54,  58,  57],
        [ 22,  30,  25],
        [  6,  16,   9]],

       [[116, 122, 116],
        [116, 122, 116],
        [115, 122, 117],
        ...,
        [ 59,  61,  58],
        [ 24,  32,  25],
        [  6,  17,   9]]], dtype=uint8)
>>> test_string = test_img.tostring()
>>> test_string
'y}zy}yz}xz}wy}xy}xy}xy}xy}xy}xx}wx}wx}xx}yy}xy}wx}vx}uy}vy}wz}xz}y{}x{}x{}wz}wx}xw}xw}ww}wx}ww}wv|wu{wtzwr                      ywoxwmvwluwjtuirrhpqgopeopdnocnocmocmodnpdnreotfpugqthstitukvvmwwoywrzwt{wu|vfw\\In(;j\x0ez}zy}yz}xz}wy}xy}                      xy}xy}xy}xy}xx}wx}xx}xx}xy}xy}wx}vx}vy}vy}wz}xz}xz}xz}xz}wy|ww|xv|wu{vtzvsyurxtovsnurlsqjqpgoodmnclnakm`ik^                      gi]fi[ehZdhYdgYcgYcgZdhZdiZdk[fl\\gk^il`jmblndnofppirqktrmurasYHl\'<i\x0e{}yz}xy}xy}xy}xy}xx}wx}wx}xx}xy}xy                      }xy}wy}vx}wx}xy}wy}wy}wy}wz}wz}wy|wy|ww|wv{wuzwsyvpwumutjrrfnobkl^hh[edXbaV^^S\\]QY]OX\\LV[JTZISZGRZFQYEPXF                      PWFPWEOWEOXEPYFQYGSZIU[LW\\OY^Q\\`S^cVafYeh]hkViTFh$>h\rz}wz}wy}xy}xy}xy}xx}wx}wx}xx}xy}xy}xy}wy}wx}xx}xy}x                      y}wx}wx}wy|wx|wwzvuyvrwuousmsqipoelmaij\\ehWaeS\\aOY]KVYISUGPSEMQCKRAIQ?HP=GP<FP;EP:DO:DN:CM:CM:CM:CM:CN:DN                      :FO<GP>IQAKSCMUDOWGRZIU]MX`K\\MC`!?b\x0cy}vx}vx}wx}wx}wx}wy}xx}xx}wx}wy}wz}xz}xy}xx}yx}yx}wx}vw|vw|vv{wuyvr                      wuntsjoqejl_eeZ``U[]PWZJSWFOUBKS@HQ=FO<EN;CL:AL:@M:@M8?K8?J7?J6>J6>K7>J7>I7>I7>J7>J7>I7>J7?J7?K7@L8@L:AM;BN                      ;DO<EP=GS>LB>T\x1d>X\x0bx}vw}vw}ww}ww}wx}wx}xx}xw}ww}wy}wz}wz}xy}xx}yx}xx|vw|uuzvrxupvsmrphnncij]cgW]aQWZLQ                      THMRCIP>FN:CL8AK7?J5>J5=I5<I5;J5;J5;J4;H4;G4;G4;G4;H4;H5;G5<H6<I6;I5;G5;G5;H4;I4;I4;I5;I5;J4<I4=J5=K7B;:K\x                      1a<P\nw}ww}wv|xv|xw}xw}xw}xv}xv}xv}xx}wy}wy}wx}wx|wx|ww{vuyvpvukrrflk`feZ__RX[JRWDLTAHP?DM<AL:@K8?K6>J5=I4<                      I4;I4;I5;I4:I3;H3;G3:G3:G3;G3;G3;G3;G3:G4;H5;I5:I6:G6:F5:G5:H4:H4:H4:I3:I3:I3;I2;H4?87F\x198J\tw}ww}ww|xw|x                      w}xw}xw}xw}xv}yw}xx}wy}wx}wx|vw{vuyurvsnrphmmaghY`aRYZLQTEKP=FN8BL8?J7<I6;H5;H4;H4;H3;H3;H3:H3:H4:I3:I2;H2;                      G3:H3:H3;G3;G2;G2;G3:H3:I4:I5:I5:G5:F59G49G39G39H39H39I29I2:H2:F3=66F\x188J\tx}vx}vx}wx}wx}wx}wx}xx}xy}xy}x                      x|wx|wy|vxzutxuotrjnlcgeZ_^RXXIPSCJO>EK:AJ7?J5=J4<I4;H4;G4;G3;G3;G3;G3;G3:G3:G2:H2:H2:I2:I3:I4:I3:H3:H3:H3:                      H3:I3:I39I49I4:H4:G49G39G28F18G29H29H38H39H39F4>78J\x18;P\tx}vx}vy}wy}wx}wx}wy}xy}xy}xy|xx{xwzwwytsvqmrofkj                      _dcW\\\\OSTFLN?FL9AI7>G5<G4;G3:H2:H2:H3:G3;F3;G3;G3;F3;F4;G4;G4<G5<G7=H9=I:>J;?I;?I<?I<@J<@J<@J<@J=?J=?J=@I                      =@I<?H:>G9=F9<F9<G8;H7:H69G58F7=7<G\x18?M\ty}wy}wy}wy}wx}xx}xx}xx}yy|yy{yxzzuxwqtqkokahdY`^RXYLPTDIO>CK9?J6                      =I5;H4;G3:F3:G29I29I2:H2:G3:G3:G3:G4;G5<G7=G9?F=@FABFEDGIFIKHILIIMJJNKLOLMOLMOLMPLMPLLOLKNKJMJJKIHJGGIEGHBF                      E@G@>G<;F89F::7A>\x18D@\ty}xy}wy}wy}wx}wx}xx}xx|xx{xwywtwworrilj`ebU\\ZMUUGMRBGO=BK9>I6<I4:H4:H3:G3:F39G29I                      29I3:H4;G5<G7=G8>H;?I=AJ@CJDEIHGHLJHPLISNKUPLVQLWRMXSOYTOYTOYUOZTOZTOYTMXSMVRLUQKUOJTMIRKIOHIJEHFCHB@H=;895                      \x1972\tx}wx}vx}wx}wx}vx}wx|wx{wwzvtvtmqofjh]`]SWVIORBHP>DN;@L9>J7<I5;H3:H39G29G39G39H29H3:H4;G7=F:?G>BHCEJ                      HHLLKNPNOSPNURNXSOYUPZVQZWR[WQ[WQZXRZXRZXR[XR\\XR\\XQZXPYXOYWOXWOYVOYUNXTOWSNUQMSPLQMKBA:&+\x1a\x18!\nx}vx}                      vx}wx}wx}vx|vw{vvyusvrnpneif\\`^RUUHLO@EL:AK8>K6<J6<I5;I4:H3:G39G39G39G49H4;H7=H:?H>BHCEIHIJMMLRPNVRPYUQ[WQ                      \\XR]YR]YS\\ZT]ZT]ZS\\ZS[ZS[ZS[ZS\\ZS]ZS\\ZR[ZQZZPZZQ[ZQ[YQ\\YQ\\YR[YQZXPZWOYUNEE=\x1c&\x1b\x08\x16\nw}ww}w                      x|wx|ww|ww{vvzurvrmplehe\\^]RTUGKO?DK:@I7>H5=I4<I4;I3;H4:G4:G4:G4:G4:G5<G9>G>BHDGKJKMNONSROVTPYVQ[WR\\XR\\Y                      R\\ZR[ZS[ZS[ZS\\ZS\\ZR[ZR\\[R\\[R\\ZS\\ZS\\ZS\\ZR\\ZQ\\ZQ[ZQ\\ZQ\\ZR]ZR]ZR\\ZR[YQZYQZXQEF?\x1d#\x1c\t\x12\x                      0bw}ww}wx|wx|ww|vuzuswrmqmehe\\_]RTUHKO?CK:?I7=H5<H4<H4;H3;I3;H4:G4:G5;G7<G8>H<AHBEIHIKMNNRRPVUQYXQ[YR\\YR]                      ZR]ZR\\[R[[RZ[SZ[S[ZS[ZS[ZR[ZR\\[R\\[R\\ZR\\ZS[ZS[ZR\\ZR\\ZR\\ZR\\ZR\\ZR]ZR]ZS\\ZS\\ZR[ZR[YRFG@\x1d#\x1d\t\                      x11\x0bw}vw}vx|ww|vw{utxrnrmgjf]`]SVVGLP?DL<@J9=I7<I6;I5;H4;H4:I4:I4:H5;G6<F:?FACIGHKONMTROVUQXWRYXRZYR[ZR[                      ZR[ZQ[ZR[ZSZZSZZRZZR[ZS[ZS[ZS[ZS\\ZS\\ZR\\ZR\\ZR[ZR[ZR[[R[[S\\ZS\\ZS[ZS\\ZS\\ZS\\ZS\\ZS\\ZS\\ZRGH@\x1e$\x1d                      \t\x12\x0bw}vw|vw|ww{vuytqtojlh`c`UWVJMP?EL9@J9=J8<I7;J6;I5;H5;H4:H4;H5;H7=H;@GADIIJLPONWTPZWQZXRZYRZYRYXRX                      XQWWQVVPUVPUVQUVQUWQVWQWXRXYSYYSZZT[ZS\\ZS\\ZR\\ZR[ZS[ZS[[S[[S\\ZS\\ZR[ZR[ZS[ZS[ZS[YS[YS[YRFG@\x1d$\x1d\t\x                      12\x0bv|wv|ww{wvyusvrnokeebYZYLOQBFL:@K6=J6<J7;J6;I6;I5;H4;G4;G5<G7>H<AJCGLKLNRQQWURYWRZXRYXQYXQXWQVUPRSOOQ                      NMOMLNLKMLKNMLPOMQPOTQRVRUXSXYSZYS[YS[ZS[ZS[ZT[ZT[ZR[ZR\\ZR\\ZQ[ZQ[ZRZYSZYTZXSYXRXWRCF@\x1b#\x1d\x08\x12\x0                      cv|xv|wv{wtwtqroiif^][SRSFHL<AI7=I5<I5;J5;J6;I5;I4;H4;G5<G7>G;AIBFLJMNQRQWVSZXSZXRYWQVUOTSMPPKLMIHJGEGFCEEB                      DDBCCBDDCFFDGHFJIIMKLPMPROTUPWWRYYRZZS[ZT[ZT[ZR[ZQ\\ZQ\\ZQ[YQYXQXWRVUQSSOQQMOOK<?:\x18!\x1b\x06\x11\x0cv|yv                      {xuzvrurmmjdc`WVULLNADI9>G7<G5;H4;I4;I5;J5;I4;H5<H7>H;AICGLJMNQROUVQXXSYYSYWQVTNQPLKJGCD@=@<;<9997986986:85                      :96;97<99<;;=>>>BBCGFINKPSOUWPYYQZZR[ZSZZS[ZR\\YR\\YRZXRWUQSRONNLHIFCEA@A>04/\x13\x1c\x17\x05\x10\x0bv|xu{w                      txtprnihd^][QPQFGK=@G7<F6;G4;H3;H3;I4;I4;I4;H6=H:@I@EKILNPRPUVPXXQXYSXXRWTNROJJHEBB?;<8784662761:72<82>92?9                      2?82>73;53965899:>>@EDGLIORMUVPYXQZZRZZS[YS\\XRZWPVTOQOLKJHEEC?@=;<8995+-)\x11\x18\x14\x04\x0e\nu{vuzttvqnn                      idc_XWVLKNBCJ;=H6;G4:H3:H3:H3:H3:H3;H4;H7>I>DKFJMOQOUUQXXQYXRWXRVUOSOJMHCA?:;95872871;92@=4EA7KD9OF:PE9NC9K                      ?6E92?609527769;;>ABGJJOQOVVQZYR[YS[XS[WQWTMPMHHFB@?;::6873851960-+&\x12\x17\x13\x05\r\nv{tuxrssmkke^^ZRRRG                      GL>@I9<I5:H3:H2:H3:G3:G3:G3;G4<H9AIBHLKNOSTPXXQZXQZXRWWQTRMNJEFA=<95751762;94A?8HE<OJ@TNBXOBYOBXMATI>NA8G<4                      ?729537669:<?DEHLKRSOYWQZXR[XQZUNTPIIGA@?:883550750:72?:330*\x14\x18\x15\x06\x0c\x0bwzruworpjhfbYYVLMOBDK:>                      I7;I4:H39G29F2:F2:F3:G4;G6>H<DIFKLNQNUUPYXPZXQZWQXVORPIHE@?<9:64853:97@?<HHDPNIVRKYULZVLZVL[ULYRJVNFQH@J?9B                      959646789>?AFFNPLVVOYXPYWOWSKOKDAA:9:4561661;;4B@9KG@=;5\x19\x1c\x19\x07\r\x0cxzsuvoqnhfc_VUTHJM>AJ7<I5;I39                      H29G29F19F2:F3:F5<G8@I?FKJNMRSOWVPZXP[XQZWPXVNROGEB<=:6953964;;:BBALLJTSOZVP\\XQ[YQ[YQ\\YR\\XP[UMWOGPE>G=8;                      745656;;>CBLNJUUNYWOYVNVQHMHA>=6571550883@@9HG@ROICA=\x1b\x1f\x1c\x07\r\x0cwyvuuppkfe`\\URRGGL<@K5;I3:H29G1                      8G18G09G19F3:F6<G<AJDHMNPOUUPYWQ[XQZXQYWPXVMROFHB;@:4;62964;<;ACCKMLSSPYWQ[YRZYRZYR\\YQ\\XPZVOVPJPHAG@:=858                      647:9>A@LMHUTMYWPYUMUOGLF>=;5661761<;6ED>MLFUSMED@\x1c \x1d\x07\x0e\x0cvywtspnidd]YSPPFEK;>J4:H29G19G18F18F                      09G19G3:F7=H>CKGJNRRPXVQZWR[XRZXQYXPXWMTQGLE<E=6=72:639:9=A@EIIMPNTTQXWRXXRYXRZXQYVPWTNRNIKF@D?9<84974:;9AB                      ?NMHVTMZWPYUMUNFLE>>:4750862=<8FFBONIWUPFEA\x1c!\x1e\x07\x0e\x0cuxvrrolgaa[VRNNEDJ:=H4:G39F28F19E19E19F29G2                      :G6>I>ELHLOSSQYWRZXRZXRZXQYXPYXNWSISKALC9A93:517648::<ABCHIKONQSQTURVVRVUQTSOOOKIIEB@<=:6973985==:EDAQNIXUN                      YWPYUNWNGNE>?:4750762<;9EFCNNJVUPEFA\x1c!\x1e\x07\x0f\x0cuwtqqmkf^_ZTPMMDCI:=H49G49F38F29E19E29F29G3:H7?J?F                      MIMOTTQZWRZXRZXRYXQYXPYXOXUKWPEQH?F>7>838526658:;<?ABFGHJJKLKMMKLMJJKGFFDAA?<;7984984<;7CA>KIDTQKYVOZWPYUMX                      NGOF>?;4750763<;9EFCMNJUUODF@\x1b!\x1d\x07\x0f\x0cvwsrqkje]^XROLLCBH9<G49G49F39F28F28F28F39G4:G8?J@GNJNPTTQ                      YXQYXQYXQYXRYXQZXOYVMXTKTNFME>E=8=7384274476699:;<<==>>>>=><<=:;:8986863873;;5A@;JHCQOIWTMZWPZXPYUMWOFNF??;                      5762864<<9EEBNNIUUNDF?\x1b"\x1c\x07\x10\x0bvwrrqkje\\_XRPLKDBH9<G49F49F38F38F28F28F39F4:G8?J@GNJNPTUPYXQYXQ                      YXQYXQYXQZXPYVOXTMTOHMG@E?9=73830730731753875:86:96984973851730640862;;7AB=KKFRRLWVOZXPZXPYUMWOFNF??;676286                      4<<9EEBMNHUUMEG>\x1b"\x1c\x07\x11\x0buxrqrkkf]`YSRMLECG:=F49E39E38E37F37F28G29G3:F7?I?GMINOTUPZXPZXPZXPYXQY                      XQYWQXUOUQLOKFEB=>;6962740851:71>93@;4A<5B<5A;3@91=6/:4.83/752998>@?FJGMQMUUOYWPZXOYULXNGOE??:5851864<;9DEA                      MMGUULEF=\x1c#\x1c\x07\x12\x0buxrrrkng^c[SSNLEDG:=F49E39E38E37F27F28G29G2:F6?H>FLHMOTTPZXPZXOZXOYXPYWQYVPVS                      MPLHIEA?=9994862972=:4B>6FA8ID:JD;KD;JC:HA8F>5C:3>71;73987:==@EDGLJQRMVVOXWNYULXNGOF?@:5851863<;9DEAMMHUTME                      F>\x1c$\x1c\x07\x12\x0bvysuslqh_g\\TUOLFEH:>G4:F39F38F28F28F18F18F2:G5>H<ELFLNSSOYWPZXOZXOYXPYWPXUOSOJIFAA>                      :;85863983><6FC<MI@RMDTPGUQITQITQHSOFSLBPF=I?8B:5;848879==?DCKMJRTMVVMXUKWOFPG?A;5961863<<8EEBMMIUTNEG?\x1b                      $\x1c\x07\x13\x0bwysvtmskai_VVQMGFH;>G5:G49F39F28F28F18F18F29G5=H:CKCJMPROWWPYXPZXPYXPYWOYTMRLFEA;<94852863                      ;;6BA;LJBSPGXTKZVNZWPYWQYXPYWNZTJWOEQF>H?8>94763587:>=EIFNQKTUMXUKWPFOG?@;6862862<;8DEBLMIUTODG@\x1c$\x1d\x                      07\x14\x0bvztuvntncjcYWTOHHI>?G8:F59F39F28E18E08F08G19G4<H8AJ?HLKQPSVQWWQYXQZXPZVN[SKSJCB>7971651874=>:EEAO                      NHUSLXUNYWPYWQZXQZXR[XQZWOXSKTLEMD=A;69625527:8@DBIMITTLYULWOGNG?>:6652653;:8CDAKMHTTNDG?\x1c%\x1c\x08\x15\                      x0bvzuuwptqfkf\\ZWQMKJCAG;;F5:F29F28E18E/8F/8G08G2;G5?H<EKFNOOTQUWQXXQYXPZVNZSJRJBB=586/640775=><DFCNOJUTOX                      VPYWQYXQYXQZXR[WRYWQWTNSNHLF@A<7:72541785=B?GKGTSLYTLWPGNG@>:6642642:97BC@JLGSTMDG?\x1c&\x1d\x08\x15\x0cw{v                      uxrssklia`ZTTNKHDH>=G6:G29G18E08E.9F.8F/8F19F2<G8AJBJMJQOSVPWXPXXPYWNXTJQLBC>7:61641665:<<ADCJNJRSNWVOYWPYX                      PXXPYWQYVQWTPSQMMLHGEA?=8:83751895>B>GKFSSLXUMWPGNG@?;6741642:86AB?IKFRSLCG>\x1b&\x1e\x07\x16\x0ew{uuyssunn                      lee_WZSNLHJA@G8;G39G18F08E/9F/8E/7E08E19F6>H=ELFMNOSOUWPWXPXWOWVLQOEHB:A:4:51753899<?@CHGJNLPRMTTNTUOTUPUUP                      TSOQPMLLJFGE@B?<<8984872;;6BD?KMGUTMYUNWQIPIBD=8;72852985>?=FGDOPJ@E>\x1a%\x1f\x07\x16\x10vzsuyrtvoqphje\\^                      ZSOMLCCH;=G59F28F18F18E18E17D17D28E4;G9AK@HNJPPQUQUWPWXPVWOURISJ?LA7A829406546899=A>CGCJJHNMKPNMQONPOLMLGIH                      BDD=@?9<;797785995>?:IHCRPJXUOZVPXTLSMEKB;B;4:827849<:?BAHKI;A>\x18$ \x07\x15\x11uzsuyruxqsskokae`XWSOJHI@?                      G8;F39G18F28E28D17D17E28E3:G5=I:CLCKPJQQRUPVWPWWPWULXPETI>I>7@83:6276567;7;?;AB?EECGFEHGEGGCED?A@;=<8:96977                      959:6>>9ED>PMFWSLZVQ[WQYVNUQHQH?IA8?;4993797:=<ADD>;:1!\x1f*\x14\x11v{tvzsvysuvotpfng]dZRWNKGDH<=G5:F28E18D                      08C07E17F18F29G2:H5>J:FNBLPMRPUVQXWQYVOYULWPGRI@KB:E<5>73964664775897::8;;9::8997975863763783;:4@?7GE>OLDVR                      JZVN[XQ[XQZWPXTKVOEPH>G?8?:48746769::H11c\x1c\x1bp\x11\x10v{uv{uvzuvxrvtkslblaW`UOPIJCAH9;G49F18D08D17F17G1                      7G28G18G2;H4@L;FNFNPOSQUUQXWPXWOXUMWQHSKBND<H?8B;5=93<82;72<72;82:82:72;72=82=:4?=6CA9IF>PMDVRIZUM\\XO[YQZY                      QZXPYWNYTJUNDNF>G@9?;5;84:84R-,\x81\x1a\x1b\x99\x10\x12u{vu{vv{vvztwxptriph^g]U[QNMFI?>H7:G49F28E27E27F16F1                      7F17F19G3;I6@L=GNFMPOSPUVPWWOXVNXUMWSJUPGSLCOI?LF<IC8HA6G?4F?3D?3E@4G@6JB9LE<NI@QLETPIWTMZVO\\XO]YP[YPZYPYX                      OXXOXWMWTJUOFQK@ME;I@6D<3[/+\x8c\x1b\x1f\xa4\x11\x19u{vu{vv{vv{uvzsuvnroeme\\dYSXNLIDI>=G7:F48F37E27E16E16E                      17F17G18H3;I7@L=GNFMOMRORUOUVPWWPXWOYVMXTJVRGTODRLAQJ>PH<OG;NH;NI<QJ>SLAUNEVQHXTLZVOZXQ[XQ\\YQ\\YP[YPYYPYXO                      YXPYXPYWNXULWRGUNBRI=MD9]50\x81\x1d$\x93\x11\x1ev{wv{wv{vv{vu{utyqtukqnckbYbWQVKKIBG<<F58E38E27E17F07F07F07                      F07G18G3;I6>K;DLAJNIQPPUQTWQWXPXWOXVNWUNVTMVSLWSJWRIWRIVRIVRIWSKXTLXUMYVOYWOZXP[YQ[YQZYQZYQZYPYYPZXPZXQZXQZ                      XPYXOXWNXUKWSIUPGX@=` +d\x11"v{wv{wv{vv{vu{vtztuypstipk`jaX`UPTJJFAG<<E6:E38E28E17F17F17F17F17F18G3:H4=J9CL                      @JOGOPMSPRUPUVPVVPVVPWWQXWQYWQ[WP[WPZWQZWQZXQ[XQZYQZYRZYQZYQZYQZYQYXQXXQWXPWXPYXQ[XQ[XQ[XQZYQYYPZXPYXOYWNTE                      CL"-H\x11"w{ww{ww{ww{wv{wu{vuzstxottiplah`W_UOSJIGBE==E7:D59D38E27F27F27E17E17F28F29G4<I7@K<EMBKOIPPOSPSUOT                      UOVVOWVPYWQZWQZXQZXRZXRZXQZYP[YQ[YQ[YQZYQYXQYXPXWOVVOSUPSVPWWPZWP[XP[XP[YPZYOYYOYXOYXORFCC"*=\x10\x1ew{ww{w                      w{ww{xv{wv{vu{vuzsvyossinj`g`W^UNTKIGCF?>E:<E7:E49F38F27E27E17E17E17F18G1:I4>K9CM?HNFMOKPONROQSOUUPWVQXWQYX                      QZXRZXRZYQZYPZYQZYQ[YQZXQYXPYWOYVNWUMSTOSUPWVPZWP[XP\\XP[YOZYPZYPYYOYXPPFB?"(7\x10\x1bv{vv{vv{wv{wv{wv{wv{v                      v{uvzsuxossjolbi`W`VOUMJKFGCAG<>F8;G59F28F18F17F17F07F07F/8G09H2<I5?K:BL>GNDLOJPPPSQSUQUVQWWPYXQZXQZYPZYPYY                      QYYQZXQ[XPZWNZWM[UKZULWTMVUOYWQZXQ[XP[XP[YP[YQZXQZXPZYOQFA>"%6\x0f\x18u{vu{vu{vv{wv{wv{wv{vv{vv{uuzsuypssjp                      kajbXbYQYQLNJJEDI??H9<G4:G28G17G17G17F07F/7F.7F/7G09H2;J6?K;DM@INFLOJOPLQPOSQSUQUVPWWPWXQWXQXXRYXQZXPZWOZWM                      [VM[VMZUNYVOYWQZXQZXPZXPZYQZXQZXQZXQZXOPF@>!#5\x0f\x14t{vt{vu{uv{vv{vw{vv{wv{vu{uu{tuztuxqstlqoeog[g^T[VPQM                      LIFJ@@I9<I49I28G18F27F27F07G07F06F07F08G19G3;H6>I9@J;CL=GPAKRGORLRQPTQSVQUWRWWRXXRXXRXXRXXQYWQZWQ[XQZXQZXQY                      XQYXPYXPYXQYXQZWRZWQYWPPE?=  4\x0e\x11t{vt{vu{vv{vw{vw{vv{vu{vt{ut{uuzvvzuuyruvmuqdpj]gbX^YRUOMLGKBAK;=J6:G                      38F38F37F27G27G26F16E06E/6E/7E08F19G3;I5?M8CO=GOBJOFLOINOLPPNQPORQOSROTSPUSQUSSURTURTVRSUQSUQRUPRUPQTQQSQQR                      QQQPPPNI?=;\x1e\x1d5\r\x0eu{uu{vv{ww{ww{vv{vv{uu{ut{ut{uuzvvzuvzsvypuwmsshqmbkf[c\\S[RNQIKGBI>=G8:F49G38G38                      G37G37G27F07E/7E/6D/7E07E18E29F3;H4<I6>J8?K:AL;CL=DM>FN?HP@JRBLRDNRFNQFORFORGPQGOPGOPFNPDMPBKP@IO>GN=EK;6:8                      \x1a\x1a7\x0c\x0bv{uv{vv{wv{wv{vv{uu{tu{tt{uu{uuzvvzuvztvzsuzruxpvuksodnh\\g_V_UQVMMKFJCAH=>G9<G8:G68G47G27                      G17F07E/6D/6D06E06E17D17E07G07H08H19I2;I3<J4>L5@M6BN8DO;FN<FN;GN;GM<GM<GM<FL;EL9DM7CM5AL3?J2=H3076\x17\x187                      \x0b\tv{vu{vt{wt{wu{vu{uu{tu{tu{uu{uuzvuzvtzvtzuu{tvzsvxruvossipmcmf[g^U_UOVMKMGHEBG?=G:9G68H38H27F17E07D07                      E07F17F27G27H17H07G08G/8G/8G09H09I1:I2;I3<H4=H4=G4=E4=E3<E3<E2<E1<E0;G0;H0:G09G/8E1-64\x16\x176\n\x08v{wu{v                      t{ws{vt{vt{ut{uu{uu{uv{uuzuuzvtzvtzvu{vv{uvzuvztvyquvltqeqj^kbXdZS[SNRLKKEID@H>>H:;H8:G69E38D28E17F17G27H27                      H17H17H08F/8F/7G/7G/7H/7G/8G08F08E08D08C08B/7B/7C.7B-7C-7E-7E.6E/6E.6D.+5,\x15\x17+\n\x08v{xu{wt{wt{wu{vu{v                      t{vt{vu{vu{uvzuvzuuzuuzvu{vu{vvzuwztvzsvxquvntsjqnemh_gaXaZRZRLSLILGHFCHC?F>=E9;D59D28G08G17G17G17I17I18G08                      G17G17G18G08G08H08H08G18F18F08E07D07D/7E/7E.7F.7F.7F.7E/7E),6\x1d\x16\x17\x16\x0b\x08v{xu{wu{wt{vu{vu{vs{vs                      {vt{vuzuvzuvztvzuuzvtzvu{vvzuvzuvzuuytuystwpstlqpgnjaidZd^T^XPYSNTNLPJJJFHDCF?@F;>G8<G7;F7:F69H59H49G38G38G                      38G38G28G18H09H19G28G28G28F18E17E17F07F/7F/7F/7F/7F18E\'-6\x14\x17\x17\n\x0c\x08vzwvzvuzvuzutzutzus{us{utzv                      uzvuyuvyuuyutyvuzvuzvuzvuzvuyvtyutxsswqrvopslmohjkdgg_ed\\d`Yb]V_YR[TNUPLQLJLHHIEFFBEC@E?>F<<F:;F8:F69G59G4                      9G39G39G3:G2:F39F39F39E49D38E28E18F18G18G18G28F39E(.6\x11\x18\x17\x06\r\x08vzvuzuuzutzutztsztrzuszutzvtyvuy                      uuyutyutyvtyutzutzvtyvtyusxtrxsqwrpvposnmpkknhhlfhjcjh`if]gcYd_Va\\T]XQZTNVPLSMJOJHLGHHEHEBGA@G?>G<=G:<G8<G                      8<G8=G7=F7=F8<F9<E9<E8<E8<F8<F8<G8<G9<G9=G:>F-37\x12\x1b\x18\x05\x0f\x08uzutzutzuszuszurzusytsyutyutyutxttx                      ttxutxusxtsytsyssxssxsrwsqwrovqntpmrmlojjngilgikeijdhibhhagg`ff_ed]caZa^W\\ZS[XQ]VO[SMUOJPKHLGFHDFDBFAAF@BG                      ?BH?CG@BGABGBAF@BF@BFBCFDDFDDGEEHFEHFFHGGI6:9\x16\x1e\x19\x06\x10\ttzttztszuszvrzurzusytsyttyutxuswtswstxtt                      xtsxssxsrxrrxrrwrqwrpvqnupmtolrmkoijmgilgilfhkehkehkehkeikdijbhg_fd\\aaXa_Ue]SdZP]ULXPISKFNHEIEEEDFDEGCEHCF                      HDEHFDGFDGDEFDEFGFFIGFJHGKIHLJIMJIMKJ;=:\x18 \x19\x06\x11\t'
>>> reconstructed_test_1d = np.fromstring(test_string, dtype=np.uint8)
>>> reconstructed_test_1d
array([121, 125, 122, ...,   6,  17,   9], dtype=uint8)
>>> reconstructed_test_img = reconstructed_test_1d.reshape(test_img.shape)
>>> test_img.shape
(64, 64, 3)
>>> np.allclose(test_img, reconstructed_test_img)
True
>>> reconstructed_test_img.dtype
dtype('uint8')

>>> scipy.misc.imsave('reimg1.png',reconstructed_test_img)

 

 

import numpy as np
import skimage.io as io

cat_img = io.imread('cat.jpg')
io.imshow(cat_img)

# Let's convert the picture into string representation
# using the ndarray.tostring() function
cat_string = cat_img.tostring()

# Now let's convert the string back to the image
# Important: the dtype should be specified
# otherwise the reconstruction will be errorness
# Reconstruction is 1d, so we need sizes of image
# to fully reconstruct it.
reconstructed_cat_1d = np.fromstring(cat_string, dtype=np.uint8)

# Here we reshape the 1d representation
# This is the why we need to store the sizes of image
# along with its serialized representation.
reconstructed_cat_img = reconstructed_cat_1d.reshape(cat_img.shape)

# Let's check if we got everything right and compare
# reconstructed array to the original one.
np.allclose(cat_img, reconstructed_cat_img)

  

 

posted on 2019-01-03 15:23  cdekelon  阅读(163)  评论(0)    收藏  举报

导航