From 66c66e0e46407758484d52cdd52056d9e4400d28 Mon Sep 17 00:00:00 2001 From: wimo7083 Date: Mon, 28 May 2018 10:04:39 -0600 Subject: [PATCH] initial image manipulation commit --- ocbot/pipeline/image/__init__.py | 0 ocbot/pipeline/image/image_manipulation/1.jpg | Bin 0 -> 25722 bytes ocbot/pipeline/image/image_manipulation/1.png | Bin 0 -> 7874 bytes ocbot/pipeline/image/image_manipulation/2.png | Bin 0 -> 3529 bytes .../image/image_manipulation/__init__.py | 0 .../image/image_manipulation/ccamp.png | Bin 0 -> 9916 bytes .../image/image_manipulation/elevenfifty.png | Bin 0 -> 13400 bytes .../image/image_manipulation/firehouse.png | Bin 0 -> 7892 bytes .../image/image_manipulation/guild.jpg | Bin 0 -> 6703 bytes .../image/image_manipulation/image_edit.py | 134 ++++++++++++++++++ .../image/image_manipulation/loyola.png | Bin 0 -> 35632 bytes .../image/image_manipulation/test.jpg | Bin 0 -> 6870 bytes .../image/image_manipulation/test.png | Bin 0 -> 9582 bytes 13 files changed, 134 insertions(+) create mode 100644 ocbot/pipeline/image/__init__.py create mode 100644 ocbot/pipeline/image/image_manipulation/1.jpg create mode 100644 ocbot/pipeline/image/image_manipulation/1.png create mode 100644 ocbot/pipeline/image/image_manipulation/2.png create mode 100644 ocbot/pipeline/image/image_manipulation/__init__.py create mode 100644 ocbot/pipeline/image/image_manipulation/ccamp.png create mode 100644 ocbot/pipeline/image/image_manipulation/elevenfifty.png create mode 100644 ocbot/pipeline/image/image_manipulation/firehouse.png create mode 100644 ocbot/pipeline/image/image_manipulation/guild.jpg create mode 100644 ocbot/pipeline/image/image_manipulation/image_edit.py create mode 100644 ocbot/pipeline/image/image_manipulation/loyola.png create mode 100644 ocbot/pipeline/image/image_manipulation/test.jpg create mode 100644 ocbot/pipeline/image/image_manipulation/test.png diff --git a/ocbot/pipeline/image/__init__.py b/ocbot/pipeline/image/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/ocbot/pipeline/image/image_manipulation/1.jpg b/ocbot/pipeline/image/image_manipulation/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..284c629997222e0e0bb0db3664189c015b3a05b8 GIT binary patch literal 25722 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 Wf7y{MFHM8k;PMYi|3^NL-v19w%%0r< literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/1.png b/ocbot/pipeline/image/image_manipulation/1.png new file mode 100644 index 0000000000000000000000000000000000000000..f296d7b2dd560db7dc712455c1c58631300a766a GIT binary patch literal 7874 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 NIB#ih(QM|M^lx*RaMl0- literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/__init__.py b/ocbot/pipeline/image/image_manipulation/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/ocbot/pipeline/image/image_manipulation/ccamp.png b/ocbot/pipeline/image/image_manipulation/ccamp.png new file mode 100644 index 0000000000000000000000000000000000000000..8e7c6ea65018ff5099e93979ef1f3617d92951bd GIT binary patch literal 9916 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 literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/elevenfifty.png b/ocbot/pipeline/image/image_manipulation/elevenfifty.png new file mode 100644 index 0000000000000000000000000000000000000000..b252dfacc6c9a5b38b1bca2078a3edf2bf3724b7 GIT binary patch literal 13400 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 bv{W~Z=rXUYZG!(X1W~`Gqg<+J75cvbw1P!a literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/firehouse.png b/ocbot/pipeline/image/image_manipulation/firehouse.png new file mode 100644 index 0000000000000000000000000000000000000000..1963baaf07467bd8d8faa14268320c94b40878eb GIT binary patch literal 7892 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 AIsgCw literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/guild.jpg b/ocbot/pipeline/image/image_manipulation/guild.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bd83e6a29adc0cc813727bd9dca10004cc02fea2 GIT binary patch literal 6703 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 TPINKMo{(xVEDCg^cQ^fiy7UhS literal 0 HcmV?d00001 diff --git a/ocbot/pipeline/image/image_manipulation/image_edit.py b/ocbot/pipeline/image/image_manipulation/image_edit.py new file mode 100644 index 0000000..1dc2fde --- /dev/null +++ b/ocbot/pipeline/image/image_manipulation/image_edit.py @@ -0,0 +1,134 @@ +import cv2 +import numpy as np + + +def auto_canny(image, sigma=0.33): + # compute the median of the single channel pixel intensities + v = np.median(image) + + # apply automatic Canny edge detection using the computed median + lower = int(max(0, (1.0 - sigma) * v)) + upper = int(min(255, (1.0 + sigma) * v)) + edged = cv2.Canny(image, lower, upper) + + # return the edged image + return edged + + +def find_white_pixels(canny_image): + return np.argwhere(canny_image == 255) + # reduce top, left, rigth and bottom size until we find the rectangular bound. + + +def min_max_values(coord_list): + coord_dict = {'min_row': float('inf'), + 'max_row': float('-inf'), + 'min_col': float('inf'), + 'max_col': float('-inf'), + } + for coord in coord_list: + if coord[0] < coord_dict['min_row']: + coord_dict['min_row'] = coord[0] + + if coord[0] > coord_dict['max_row']: + coord_dict['max_row'] = coord[0] + + if coord[1] < coord_dict['min_col']: + coord_dict['min_col'] = coord[1] + if coord[1] > coord_dict['max_col']: + coord_dict['max_col'] = coord[1] + + return coord_dict + + +def retain_aspect_scale(width, height, max_dim): + largest_dim = max(width, height) + + ratio = max_dim/largest_dim + return ratio + + + +def change_background(cropped_img): + + no_transparency = cv2.cvtColor(cropped_img, cv2.COLOR_BGRA2BGR) + print(no_transparency.shape) + mask = cv2.cvtColor(no_transparency, cv2.COLOR_BGR2GRAY) + _, alpha = cv2.threshold(mask, 0, 255, cv2.THRESH_BINARY) + + img_tuple = cv2.split(no_transparency) + + b, g, r = img_tuple + + #rgba = [b, g, r, alpha] + rgba = [b, g, r, alpha] + dst = cv2.merge(rgba, 3) + print('show') + cv2.imshow("image", dst) + cv2.waitKey(0) + cv2.destroyAllWindows() + print('shown') + #dst= cv2.cvtColor(dst, cv2.COLOR_BGRA2BGR) + + cv2.imwrite("test.png", dst) + return dst + + +def pad_image(corrected_image, max_size): + old_size = corrected_image.shape[:2] + + + delta_w = max_size - old_size[1] + delta_h = max_size - old_size[0] + + + top, bottom = delta_h // 2, delta_h - (delta_h // 2) + left, right = delta_w // 2, delta_w - (delta_w // 2) + + color = [255, 255, 255, 255] + new_im = cv2.copyMakeBorder(corrected_image, top, bottom, left, right, cv2.BORDER_CONSTANT, + value=color) + + cv2.imwrite("test.png", new_im) + + img = cv2.imread('test.png') + blur = cv2.bilateralFilter(img, 9,75,75) + + cv2.imwrite("test.png", new_im) + + #return new_im + cv2.imshow("image", blur) + cv2.waitKey(0) + cv2.destroyAllWindows() + +def main(img_input): + img = cv2.imread(img_input, 0) + + edges = auto_canny(img) + min_bound = find_white_pixels(edges) + + bound = min_max_values(min_bound) + + img = cv2.imread(img_input, cv2.IMREAD_UNCHANGED) + + crop_img = img[bound['min_row']:bound['max_row'], bound['min_col']: bound['max_col']] + scale_factor = retain_aspect_scale(bound['max_row'] - bound['min_row'], bound['max_col'] - bound['min_col'], + 200 - 30) + + + scaled = cv2.resize(crop_img, None, fx=scale_factor, fy=scale_factor, interpolation=cv2.INTER_CUBIC) + + corrected_image = change_background(scaled) + pad_image(corrected_image, 200) + + # cv2.imshow("cropped", scaled) + # + # cv2.waitKey(0) + + +if __name__ == '__main__': + imarr = ['1.png', '1.jpg', '2.png'] + + #imarr = ['ccamp.png', 'firehouse.png', 'guild.jpg'] + for img in imarr: + main(img) diff --git a/ocbot/pipeline/image/image_manipulation/loyola.png b/ocbot/pipeline/image/image_manipulation/loyola.png new file mode 100644 index 0000000000000000000000000000000000000000..152e9b79c44684691e447915f6f8452b8a25cf44 GIT binary patch literal 35632 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 PqoUAIy^DCOY!>ui>QL}- literal 0 HcmV?d00001