Bootstrap

OpenCV_PY_1.9图像打码、掩摸与图像坐标系

一、图像打码

测试代码

import cv2

src1=cv2.imread('img.png',cv2.IMREAD_REDUCED_COLOR_2)  # 读取图片并将大小改为1/2
cv2.imshow('Rem',src1)  # 显示未打码的图片
# 指定区域打码_看图像估个大概位置
src1[60:100,180:350]=0  # 将图像宽60至100,长180至350区域的像素值改为0
cv2.imshow('dama',src1)  # 显示打码后的图片
cv2.waitKey(0)
cv2.destroyAllWindows()

运行结果

总结

此图像打码方式主要是改变指定区域的像素值,指定打码区域需要看图片估算大概位置。

二、创建图像掩摸

测试代码

import cv2
import numpy as np

src1=cv2.imread('img.png',cv2.IMREAD_REDUCED_COLOR_2)
# 创建图像掩摸
# 图像掩摸:一张与其他图像进行某种位运算,以达到某种效果的图片,一般是黑白图
# 要能进行位运算,就需要两者的shape值相同
H,W,C=src1.shape  # 获取原图像的宽、长、通道数
zeroImg=np.zeros((H,W,C),np.uint8)  # 创建像素值为0的3通道黑色图片
zeroImg[50:150,200:350]=255  # 将黑色图片的宽50至150,长200至350区域的像素值设置为255

img=cv2.bitwise_and(src1,zeroImg)  # 按位 与运算
cv2.imshow('zero',src1)  # 显示原图像
cv2.imshow('zero1',zeroImg)  # 显示图像掩摸
cv2.imshow('zero2',img)  # 显示图像掩摸

cv2.waitKey(0)
cv2.destroyAllWindows()

运行结果

总结

图像掩摸:一张与其他图像进行某种位运算,以达到某种效果的图片,一般是黑白图。要能进行位运算,就需要两者的shape值相同,所以需要获取原图的shape值,以此来创建一张黑白图。

三、图像坐标系

前诉

opencv中的图像坐标系跟普通的平面坐标系不一样!

普通的平面坐标系

以右下角为原点(0,0),向右为x轴正方向,向上为Y轴正方向。

 图像坐标系

opencv中的图像坐标系以左上角为原点(0, 0),向右为x轴正方向向下为y轴正方向。坐标系的单位是像素,x轴的正方向是图像的宽度方向,y轴的正方向是图像的高度方向。因此,一个点的坐标可以表示为(x, y)。

2023/08/01/10:04

OpenCV学习笔记,友人归来得早起

;