From be9d6091d12c83cf38a3e6ea2f8779cde3f1056c Mon Sep 17 00:00:00 2001 From: Fisch Date: Wed, 20 Sep 2023 19:53:32 +0200 Subject: [PATCH] add image array code generator --- imagegenerator/checkerboardA.png | Bin 0 -> 9590 bytes imagegenerator/checkerboardB.png | Bin 0 -> 9571 bytes imagegenerator/generate.py | 47 +++++++++++++++++++++++++++++++ imagegenerator/rowsEven.png | Bin 0 -> 1992 bytes imagegenerator/rowsOdd.png | Bin 0 -> 2089 bytes 5 files changed, 47 insertions(+) create mode 100644 imagegenerator/checkerboardA.png create mode 100644 imagegenerator/checkerboardB.png create mode 100644 imagegenerator/generate.py create mode 100644 imagegenerator/rowsEven.png create mode 100644 imagegenerator/rowsOdd.png diff --git a/imagegenerator/checkerboardA.png b/imagegenerator/checkerboardA.png new file mode 100644 index 0000000000000000000000000000000000000000..ccf45073bf8cc100fdc11e89b31e41dc8cf9461c GIT binary patch literal 9590 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 literal 0 HcmV?d00001 diff --git a/imagegenerator/checkerboardB.png b/imagegenerator/checkerboardB.png new file mode 100644 index 0000000000000000000000000000000000000000..3ba3f535c1fc0ccbbee255746532cb728195d3ec GIT binary patch literal 9571 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 N002ovPDHLkV1f}?a+?4E literal 0 HcmV?d00001 diff --git a/imagegenerator/generate.py b/imagegenerator/generate.py new file mode 100644 index 0000000..425a295 --- /dev/null +++ b/imagegenerator/generate.py @@ -0,0 +1,47 @@ +from PIL import Image +import math +import argparse + +parser = argparse.ArgumentParser( + prog = 'Image Edit Script', + description = 'Manipulate or extract information from an image file', + epilog = '') + +parser.add_argument('filename') # positional argument +parser.add_argument('-o', '--output') # option that takes a value +parser.add_argument('-v', '--verbose', action='store_true') # on/off flag + +args = parser.parse_args() +print(args.filename, args.output, args.verbose) + + +im = Image.open(args.filename) # Can be many different formats. +pix = im.load() +print(im.size) # Get the width and hight of the image for iterating over +print(pix[10,10]) # Get the RGBA Value of the a pixel of an image + + + +def calculateDistance(x1,y1,x2,y2): + dist = math.sqrt((x2 - x1)**2 + (y2 - y1)**2) + return dist + +with open('result.txt', 'w') as f: + for x in range(im.size[0]): + f.write("backBuffer[") + f.write(str(x)) + f.write("]=0b") + for y in range(im.size[1]): + c = pix[x,y] #get pixel + if (c[0]>127): + f.write("1") + else: + f.write("0") + + + f.write(";") + f.write('\r\n') + + + + diff --git a/imagegenerator/rowsEven.png b/imagegenerator/rowsEven.png new file mode 100644 index 0000000000000000000000000000000000000000..d8a469bd08e65dfc70e5d67adb6cc26adaa3c85b GIT binary patch literal 1992 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 literal 0 HcmV?d00001