opencv-python图片的镜像

实现步骤
1.创建一个足够大的空白面板(也就是足够大的矩阵)
2.将原图片进行镜像翻转处理
3.将原图片和镜像图片放入空白面板中
4.在源图像和镜像图像之间画分割线
注意:本人为了能完整显示图片,将源图片缩小了2倍缩放教程
效果:
在这里插入图片描述源码:

import cv2# opencv库
import numpy as np# py矩阵库
img = cv2.imread('image0.jpg',1)
# 为了完整的显示图片,我选择对他进行缩放0.5倍
srcScaler = np.float32([[0.5,0,0],[0,0.5,0]])
img = cv2.warpAffine(img,srcScaler,(int(width*0.5),int(height*0.5)))
# 获取图片基本信息
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
# 创建一个镜像图片的翻转图像矩阵,为了存放镜像图片
img2 = np.zeros(img.shape,np.uint8)
# 创建一个大面积的空白面板
dst = np.zeros((height*2,width,3),np.uint8)
# 镜像图片处理
for i in range(height):
    for j in range(width):
        img2[i,j] = img[height-1 - i,j]
# 将原图片和镜像图片放入空白模板中
for i in range(height):
    for j in range(width):
        dst[i,j] = img[i,j]
        dst[i+height,j] = img2[i,j]
# 在其中画上分界线
cv2.line(dst,(0,height),(width,height),(0,0,255))
cv2.imshow('img',dst)
cv2.waitKey(0)
发布了24 篇原创文章 · 获赞 48 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/xiaokai1999/article/details/103978837