首页 > 电脑常识 > 电脑常识

电脑常识opencv-python两张图片填充,指定区域替换其他图片

admin 电脑常识 2021-07-28 12:13:05 python opencv 计算机视觉 
后台-系统设置-扩展变量-手机广告位-内容正文底部

我们现在玩一个有趣的代码

就是我现在在特定的区域填充了某个颜色,

 像这样,现在我想在这个填充了其他颜色的区域填充其他图片。比如蚂蚁图片

比如这张图片,我现在的目的就是把这张图片填充在特定区域里面,这样是不是有点意思呢

那么最后的成果图片就是这个样子:

 直接上代码:

import cv2 as cv
import numpy as np
from PIL import Image


img1 = cv.imread('./photo1.png') #读入图片1
img1 = cv.resize(img1,dsize=(300,300))    #将图片1resize到300*300的固定大小
cv.imshow('photo1.png', img1)   #显示输入的图片1
img2 = cv.imread('./photo2.png') #读入图片2
img2 = cv.resize(img2,dsize=(300,300))      #将图片2也调整到固定大小
cv.imshow('photo2.png', img2)   #显示输入的图片2
# cv.waitKey(0)

orininal_h = np.array(img1).shape[0] #获得图片1的高
orininal_w = np.array(img1).shape[1] #获得图片1的宽
img1 = np.array(img1)  #图片1变成numpy类型
img2 = np.array(img2)  #图片2变成numpy类型
for j in range(orininal_h):      #循环遍历所有像素点
    for k in range(orininal_w):
        if img1[j,k,0] == 127:       #如果这个像素点的值为127的话
            img1[j, k, 0] = img2[j, k, 0]   #将img1的图像该位置像素替换成img2
            img1[j, k, 1] = img2[j, k, 1]
            img1[j, k, 2] = img2[j, k, 2]

cv.imshow('result', img1)   #显示输入变换后的图片1
cv.waitKey(0)

 记得点赞加关注,更新不间断!!

文章来源:https://blog.csdn.net/qq_34904125/article/details/119108656

后台-系统设置-扩展变量-手机广告位-内容正文底部
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
本文地址:https://www.jcdi.cn/diannaochangshi/107637.html

留言与评论(共有 0 条评论)
   
验证码:
后台-系统设置-扩展变量-手机广告位-评论底部广告位

教程弟

https://www.jcdi.cn/

统计代码 | 京ICP1234567-2号

Powered By 教程弟 教程弟

使用手机软件扫描微信二维码