From 653f17ae0d7f03b729fc149014098e1a98ae1607 Mon Sep 17 00:00:00 2001 From: Maksim Korzh Date: Fri, 2 Jul 2021 08:28:58 +0300 Subject: [PATCH] added draw matrix bulk script --- src/bulk/face.jpg | Bin 0 -> 33985 bytes src/bulk/image1.png | Bin 0 -> 3843 bytes src/bulk/image2.png | Bin 0 -> 6937 bytes src/bulk/image3.png | Bin 0 -> 8564 bytes src/bulk/image4.png | Bin 0 -> 3575 bytes src/bulk/image5.png | Bin 0 -> 10844 bytes src/bulk/image6.png | Bin 0 -> 2512 bytes src/bulk/image7.png | Bin 0 -> 4434 bytes src/draw-matrix-bulk.py | 62 +++++++++++++++++++++++++ src/{draw.py => draw-matrix-random.py} | 2 +- src/draw-matrix.py | 57 +++++++++++++++++++++++ 11 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 src/bulk/face.jpg create mode 100644 src/bulk/image1.png create mode 100644 src/bulk/image2.png create mode 100644 src/bulk/image3.png create mode 100644 src/bulk/image4.png create mode 100644 src/bulk/image5.png create mode 100644 src/bulk/image6.png create mode 100644 src/bulk/image7.png create mode 100644 src/draw-matrix-bulk.py rename src/{draw.py => draw-matrix-random.py} (98%) create mode 100644 src/draw-matrix.py diff --git a/src/bulk/face.jpg b/src/bulk/face.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8d87db22322d94f845c49a0e04efbf30400f1180 GIT binary patch literal 33985 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ℑN*&WVg#ZzRdy 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 nG-b+AHKe#X1@NTWgkkB@I&}P5^SSzKNVJjv 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 literal 0 HcmV?d00001 diff --git a/src/bulk/image2.png b/src/bulk/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..bb91a08915561cdcf464a5b812b5b2b078eaff5d GIT binary patch literal 6937 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 literal 0 HcmV?d00001 diff --git a/src/bulk/image3.png b/src/bulk/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..adfa0681ac64632882d38b9be4bbf710afacebb8 GIT binary patch literal 8564 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 NuV`N`RlRlpe*pYOeh&Zu literal 0 HcmV?d00001 diff --git a/src/bulk/image4.png b/src/bulk/image4.png new file mode 100644 index 0000000000000000000000000000000000000000..1f83d278616dc56ae3fafb2a711423ebfdf8e89a GIT binary patch literal 3575 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 literal 0 HcmV?d00001 diff --git a/src/draw-matrix-bulk.py b/src/draw-matrix-bulk.py new file mode 100644 index 0000000..5c1c9c2 --- /dev/null +++ b/src/draw-matrix-bulk.py @@ -0,0 +1,62 @@ +########################################## +# +# Simple script to automate the process +# of drawing using Python +# +# by +# +# Code Monkey King +# +########################################## + + +# packages +import cv2 +import pyautogui as pg +import time +import random + +# wait before user clicks on window to within +time.sleep(5) + +# global coordinates of where to start drawing (change if needed!) +x_start = 200 +y_start = 200 + +# put mouse mointer into initial position +pg.moveTo(x_start, y_start) + +# number of images +frames = 12 + +# loop over images +for i in range(1, frames + 1): + # open source image + originalImage = cv2.imread('./bulk/image' + str(i) + '.png') + + # convert image to grayscale + grayImage = cv2.cvtColor(originalImage, cv2.COLOR_BGR2GRAY) + + # convert image to black and white + (thresh, blackAndWhiteImage) = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY) + + # uncomment below lines to preview image + #cv2.imshow('Black & white image', blackAndWhiteImage) + #cv2.waitKey(0) + #cv2.destroyAllWindows() + + # loop over pixel rows + for y in range(len(blackAndWhiteImage)): + # init row + row = blackAndWhiteImage[y] + + # loop over pixel cols + for x in range(len(row)): + if row[x] == 0: + # draw pixel! + pg.click(x_start + x, y_start + y, _pause=False) + print('Drawing at:', x_start + x, y_start + y) + + # animation speed + time.sleep(0.008) + diff --git a/src/draw.py b/src/draw-matrix-random.py similarity index 98% rename from src/draw.py rename to src/draw-matrix-random.py index 1e9a909..a700951 100644 --- a/src/draw.py +++ b/src/draw-matrix-random.py @@ -52,7 +52,7 @@ # randomize cols traversal order row = blackAndWhiteImage[y] random_cols = list(range(len(row))) - random.shuffle(random_cols) + #random.shuffle(random_cols) # loop over pixel cols for x in random_cols: diff --git a/src/draw-matrix.py b/src/draw-matrix.py new file mode 100644 index 0000000..4639c1a --- /dev/null +++ b/src/draw-matrix.py @@ -0,0 +1,57 @@ +########################################## +# +# Simple script to automate the process +# of drawing using Python +# +# by +# +# Code Monkey King +# +########################################## + + +# packages +import cv2 +import pyautogui as pg +import time +import random + +# open source image +originalImage = cv2.imread('image.png') + +# convert image to grayscale +grayImage = cv2.cvtColor(originalImage, cv2.COLOR_BGR2GRAY) + +# convert image to black and white +(thresh, blackAndWhiteImage) = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY) + +# uncomment below lines to preview image +cv2.imshow('Black & white image', blackAndWhiteImage) +cv2.waitKey(0) +cv2.destroyAllWindows() + +# global coordinates of where to start drawing (change if needed!) +x_start = 250 +y_start = 150 + +# wait before user clicks on window to within +time.sleep(5) + +# put mouse mointer into initial position +pg.moveTo(x_start, y_start) + +# loop over pixel rows +for y in range(len(blackAndWhiteImage)): + # init row + row = blackAndWhiteImage[y] + + # loop over pixel cols + for x in range(len(row)): + if row[x] == 0: + # draw pixel! + pg.click(x_start + x, y_start + y, _pause=False) + print('Drawing at:', x_start + x, y_start + y) + + # animation speed + time.sleep(0.008) +