OpenCV 可以进行一系列的图像处理,也能够直接的绘制图片,但涉及到一些复杂的图像处理时,没有现成的 API 可以使用,这个时候需要我们自己实现代码。
本文介绍如何利用现成的 API 去实现一个比较复杂,但可能比较常见的图像处理操作,那就时给图片添加一个透明渐变的效果。
大家可以看看效果图。
0,0,255),(0,0,0))cv2.imshow('lena',img)cv2.imshow('gradients',grad_img)cv2.waitKey()cv2.destroyAllWindows()
0,255,255),(0,0,0))
blend = cv2.addWeighted(img,1.0,grad_img,0.6,0.0)cv2.imshow('lena',img)
cv2.imshow('gradients',grad_img)
cv2.imshow('blend',blend)q = cv2.waitKey()
cv2.destroyAllWindows()
效果如下:
本文只讲了一个方向的渐变效果,其他方向大家可以自己思考一下,想想怎么实现,其实思路差不多。