Drkcore

28 04 2011 Python Tweet

ファイルのデータから画像を作ってみる

ファイルの内容を16進数で読みながらrgbのデータとして画像出力してみる。普通に出力すると単なるノイズになってしまうのでheightを繰り返してみた。

import Image
from binascii import hexlify
from random import randint

def text2rgb(text,length):
   hex = hexlify(text)
   hex_length = len(hex)
   buf = hex
   result = []
   while len(result) < length:
       if len(buf) < 6:
           start = randint(1,hex_length)
           end   = randint(1,hex_length)
           if start > end:
               buf += hex[end:start]
           else:
               buf += hex[start:end]
       else:
           r = buf[:2]
           g = buf[2:4]
           b = buf[4:6]
           buf = buf[6:]
           #for t in range(10):
           result.append((int(r,16),int(g,16),int(b,16)))
   return result

if __name__ == '__main__':
   WIDTH = 480
   HEIGHT = 480

   text = open('/Users/kzfm/PKPD.dot','rb').read()

   rgb = text2rgb(text,WIDTH*HEIGHT)

   im = Image.new( "RGB", ( HEIGHT, WIDTH ), ( 0, 0, 0 ) )
   pix = im.load()
   for h in range(HEIGHT):
       for w in range(WIDTH):
           try:
               pix[w,h] = rgb[w]
           except IndexError:
               pass
   im.save("test.png")

text2rgb

FORM+CODEにインスパイアされた

ProductName FORM+CODE -デザイン/アート/建築における、かたちとコード

ビー・エヌ・エヌ新社 / 2520円 ( 2011-04-25 )


About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021