04 图像像素读写操作
在这一部分主要记录了图像像素读写操作,具体实现如下:
import cv2 as cv
path = "../image/test.jpeg"
src = cv.imread(path)
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)
h, w, ch = src.shape
print("h: %s , w: %s, ch: %s"%(h, w, ch))
for row in range(h):
for col in range(w):
b, g, r = src[row, col]
b = 255 - b
g = 255 - g
r = 255 - r
src[row, col] = [b, g, r]
cv.imshow("output", src)
cv.waitKey(0)
cv.destroyAllWindows()
其中,h, w, ch = src.shape
分别将读入图像的shape,即图像的高、宽和通道的数值取出。在通过循环使用255减去像素值,相当于进行取反,最后得出图像的负片。
所有内容均来源于贾志刚老师的知识星球——OpenCV研习社,本文为个人整理学习,已获得贾老师授权,有兴趣、有能力的可以加入贾老师的知识星球进行深入学习。