opencv图像灰度化-算法优化
opencv图像灰度化-算法优化之前的灰度图像进行处理的时候是浮点型运算,运算时间较长,现在可以对灰度图像进行算法优化,将浮点型运算转换成整型运算。提高运算速度。方法一:import cv2import numpy as npimg1 = cv2.imread(r"C:\Users\lenovo\Desktop\python\python_vision\image.jpg",1)imgInfo =
·
opencv图像灰度化-算法优化
之前的灰度图像进行处理的时候是浮点型运算,运算时间较长,现在可以对灰度图像进行算法优化,将浮点型运算转换成整型运算。提高运算速度。
方法一:
import cv2
import numpy as np
img1 = cv2.imread(r"C:\Users\lenovo\Desktop\python\python_vision\image.jpg",1)
imgInfo = img1.shape
height = imgInfo[0]
width = imgInfo[1]
# huidutuxiang suanfayouhua
# fudianxing>>>dingdian
dst = np.zeros((height,width,3),np.uint8)
for i in range(0,height):
for j in range(0,width):
(b,g,r) = img1[i,j]
b = int(b)
g = int(g)
r = int(r)
gray = (r*1+g*2+b*1)/4
dst[i,j] = np.uint8(gray)
cv2.imshow("dst",dst)
cv2.waitKey()
方法二:
整型运算之后,还可以左移右移的方式。
import cv2
import numpy as np
img1 = cv2.imread(r"C:\Users\lenovo\Desktop\python\python_vision\image.jpg",1)
imgInfo = img1.shape
height = imgInfo[0]
width = imgInfo[1]
# huidutuxiang suanfayouhua
# fudianxing>>>dingdian
dst = np.zeros((height,width,3),np.uint8)
for i in range(0,height):
for j in range(0,width):
(b,g,r) = img1[i,j]
b = int(b)
g = int(g)
r = int(r)
gray = (r*1+(g<<1)+b*1)>>2
dst[i,j] = np.uint8(gray)
cv2.imshow("dst",dst)
cv2.waitKey()

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)