Last active
March 17, 2016 14:48
-
-
Save manujrastogi/d4d7d8d4c1862a2e6a91 to your computer and use it in GitHub Desktop.
Python opencv
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# import the necessary packages | |
import numpy as np | |
import urllib | |
import cv2 | |
from PIL import Image | |
import sys | |
class Tint: | |
''' | |
Tint | |
Select the rgb value of a color tone and multiply it with he frame to create | |
a tinted effect into your image. | |
''' | |
def __init__(self): | |
pass | |
#create mask and render frame | |
def render(self,frame,r,g,bl,s): | |
temp=np.full((l,b,n),[bl,g,r],dtype=np.int) | |
return np.multiply(frame,temp) | |
# METHOD #1: OpenCV, NumPy, and urllib | |
def url_to_image(url): | |
# download the image, convert it to a NumPy array, and then read | |
# it into OpenCV format | |
resp = urllib.urlopen(url) | |
image = np.asarray(bytearray(resp.read()), dtype="uint8") | |
image = cv2.imdecode(image, cv2.IMREAD_COLOR) #equivalent to cv2.imread() | |
o_b,o_g,o_r = cv2.split(image) | |
rgb_img = cv2.merge([o_r,o_g,o_b]) #convert to rgb_image | |
pil_img = Image.fromarray(rgb_img, 'RGB') | |
height = pil_img.height | |
width = pil_img.width | |
r = 255 | |
g = 255 | |
bl = 255 | |
#temp=np.full((height,width),[bl,g,r],dtype=np.int) | |
rgb_image = Image.new('RGB', (height,width), (r, g, bl)) | |
#open_cv_image = np.array(rgb_image) | |
open_cv_image = cv2.cvtColor(np.array(rgb_image), cv2.COLOR_RGB2BGR) | |
#image = cv2.imdecode(open_cv_image, cv2.IMREAD_COLOR) #equivalent to cv2.imread() | |
#o_b,o_g,o_r = cv2.split(open_cv_image) | |
#open_cv_image = np.full((height,width, 3),[bl,g,r],dtype=np.int) | |
new_image = np.multiply(image,open_cv_image) | |
#filtered = cv2.merge([bl, g, r]) | |
##h6=Tint() | |
#ret, frame = image.read() | |
#cv2.imshow("Tint",h6.render(frame,r,g,bl,s)) | |
#cv2.imwrite("Mozaic.jpg",h6.render(frame)) | |
#cv2.imwrite("WaterColor.jpg",h6.render(frame)) | |
#cap.release() | |
o_b,o_g,o_r = cv2.split(new_image) | |
rgb_img = cv2.merge([o_r,o_g,o_b]) #convert to rgb_image | |
img = Image.fromarray(rgb_img, 'RGB') | |
img.save('my.jpg', 'JPEG') | |
if __name__ == "__main__": | |
url_to_image('https://s3.amazonaws.com/fetesting2/__fp2.jpg') | |
sys.exit(0) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment