ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

图像处理05 色彩转换+加减乘除、逻辑与或非

2021-08-17 17:31:07  阅读:215  来源: 互联网

标签:__ 05 cv2 图像处理 result image2 image1 img1 加减乘除


图像操作

import numpy as np
import cv2

def color_space(image):
"""色彩空间转换"""
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
hls = cv2.cvtColor(image, cv2.COLOR_BGR2HLS)
ycrcb = cv2.cvtColor(image, cv2.COLOR_BGR2YCrCb)
yuv = cv2.cvtColor(image, cv2.COLOR_BGR2YUV)

h1 = np.hstack((hsv, hls))
h2 = np.hstack((ycrcb, yuv))
stack = np.vstack((h1, h2))

return stack
# 读取图片
img = cv2.imread("girl.png")
img = cv2.resize(img, (320, 274))

# 不同色彩空间
stack = color_space(img)

# 图片展示
cv2.imshow("stack", stack)
cv2.waitKey(0)
cv2.destroyAllWindows()

 

 

import cv2


def add(image1, image2):
"""相加"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.add(image1, image2)

cv2.imshow("add_demo", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result
if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获得相加的图片
add = add(img1, img2)

# 保存图片
cv2.imwrite("add.png", add)

 

 

 

 

 

 

def subtract(image1, image2):
"""相减"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.subtract(image1, image2)

cv2.imshow("add_demo", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result

if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获得相加的图片
# add = add(img1, img2)

subtract=subtract(img1,img2)

 

 

 

 

 

 

def multiply(image1, image2):
"""相成"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.multiply(image1, image2)

cv2.imshow("add_demo", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result

if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获得相加的图片
# add = add(img1, img2)
# subtract=subtract(img1,img2)
multiply=multiply(img1,img2)

 

 

def divide(image1, image2):
"""相除"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.divide(image1, image2)

cv2.imshow("add_demo", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result

if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获得相加的图片
# add = add(img1, img2)
# subtract=subtract(img1,img2)
#multiply=multiply(img1,img2)
divide=divide(img1,img2)

 

 

 

 

 

def logic_and(image1, image2):
"""逻辑与"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.bitwise_and(image1, image2)

# 结果展示
cv2.imshow("result", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result


if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获取逻辑与后的图片
logic_and = logic_and(img1, img2)

# 保存图片
cv2.imwrite("logic_and.png", logic_and)

 

def logic_or(image1, image2):
"""逻辑或"""
image1 = cv2.resize(image1, (640, 554))
image2 = cv2.resize(image2, (640, 554))
result = cv2.bitwise_or(image1, image2)

# 结果展示
cv2.imshow("result", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result

if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获取逻辑与后的图片
logic_or = logic_or(img1, img2)

 

 

 

 

 

def logic_not(img):
"""逻辑非"""

result = cv2.bitwise_not(img)

# 合并
result = np.hstack((img, result))

# 结果展示
cv2.imshow("result", result)
cv2.waitKey(0)
cv2.destroyAllWindows()

return result

if __name__ == "__main__":
# 读取图片
img1 = cv2.imread("girl.png")
img2 = cv2.imread("cat.png")

# 获取逻辑与后的图片
logic_not = logic_not(img1)

 

标签:__,05,cv2,图像处理,result,image2,image1,img1,加减乘除
来源: https://www.cnblogs.com/kexsama/p/15153264.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有