opencv for python (6) 改变一幅图的特定区域 (往一幅图片上加标志)
来源:互联网 发布:怎样制作淘宝图片轮播 编辑:程序博客网 时间:2024/04/28 21:08
想把oencv的标志放在另一幅图像上,如果使用加法,亚瑟会改变,如果使用混合,会得到透明效果,但是我不行要透明,这时就可以运用按位运算来实现。
import cv2 import numpy as np img1 = cv2.imread('opencv.jpg') #原始图像img2 = cv2.imread('logo.png') #logo图像,要往原始图像上添加rows,cols,channels = img2.shape #得到logo的尺寸roi = img1[0:rows,0:cols ] #在原始图像中截取logo图像大小的部分img2gray = cv2.cvtColor(img2,cv2.COLOR_BGR2GRAY)#将logo图像灰度化ret,mask =cv2.threshold(img2gray,200,255,cv2.THRESH_BINARY)#将logo灰度图二值化,将得到的图像赋值给mask,logo部分的值为255,白色mask_inv = cv2.bitwise_not(mask) #将mask按位取反,即白变黑,黑变白img1_bg = cv2.bitwise_and(roi,roi,mask = mask)#将原始图像中截取的部分做处理,mask中黑色部分按位与运算,即保留黑色部分,保留除logo位置外的部分img2_fg = cv2.bitwise_and(img2,img2,mask = mask_inv)#将logo图像中,mask_inv部分按位与运算,即保留黑色部分,保留logodst = cv2.add(img1_bg,img2_fg) #图像相加img1[0:rows,0:cols] = dst #图像替换cv2.imshow('res',img1)cv2.waitKey(0)cv2.destroyAllWindows()
阅读全文
0 0
- opencv for python (6) 改变一幅图的特定区域 (往一幅图片上加标志)
- iOS截取特定区域的图片,然后拼接起来,可在图片上定制任意控件
- Android开发:SurfaceView上新建线程绘制旋转图片 及 刷新特定区域(脏矩形)
- Python 正则表达式替换特定字符为标志的字符串
- 图片加特定边框
- opencv for python (9) 图片的扩展和缩放 批量处理图片
- opencv 复制图片的感兴趣区域
- opencv自定义从一幅图片截取特定区域函数cvExtractRegion
- matlab/python+opencv提取圆形鱼眼图片的有效区域
- 用 Python 和 OpenCV 检测图片上的条形码
- 用 Python 和 OpenCV 检测图片上的条形码
- 用 Python 和 OpenCV 检测图片上的条形码
- 用 Python 和 OpenCV 检测图片上的条形码
- 用 Python 和 OpenCV 检测图片上的条形码
- 使用Python和OpenCV检测图片上的条形码
- 检测图片上的条形码 Python 和 OpenCV
- 完整的python basemap 选nc特定区域图
- 条形码区域的提取--python(opencv)
- babyos2(13)——进程页表,fork, COW(copy on write)
- iOS
- todo-mvvm-databinding源码分析
- Java高效读取大文件
- SQL中判断字符串中包含字符的方法
- opencv for python (6) 改变一幅图的特定区域 (往一幅图片上加标志)
- leetcode628.Maximum Product of Three Numbers三个数的最大乘积
- pyqt5多线程更新ui
- Maven学习总结系列一:Maven的简介
- Gith上传文件教程
- matlab二维绘图的一些总结
- STM32的BOOT0和BOOT1设置
- LinearLayout中组件右对齐
- python网络编程中,Cisco packet tracer 中多个路由器和两个交换机的配置