opencv论坛_Opencv批量添加logo的解决方案
知乎的水印是如何批量添加的?您想拥有这个本领吗?
我在opencv论坛发现了这个趣图添加logo的方法,也许您正需要这个代码,那我就诚心分享下吧。
如何删除结果图像中mainlogo.png周围的黑色边框?
import cv2
import numpy as np
import imutilsimg1 = cv2.imread('ralph.jpg')
overlay_img1 = np.ones(img1.shape, np.uint8)*255img2 = cv2.imread('mainlogo.png')
img2 = imutils.rotate_bound(img2, 10)
img2[np.where((img2==[0,0,0]).all(axis=2))] = [255,255,255] rows,cols,channels = img2.shapeoverlay_img1[0:rows, 0:cols ] = img2img2gray = cv2.cvtColor(overlay_img1,cv2.COLOR_BGR2GRAY)
ret, mask = cv2.threshold(img2gray, 220, 255, cv2.THRESH_BINARY_INV)
mask_inv = cv2.bitwise_not(mask)temp1 = cv2.bitwise_and(img1,img1,mask = mask_inv)
temp2 = cv2.bitwise_and(overlay_img1, overlay_img1, mask = mask)
cv2.imshow('Temp2', temp2)
result = cv2.add(temp1,temp2)
cv2.imshow("Result",result)
cv2.imwrite("Result.jpg", result)
cv2.waitKey(0)
cv2.destroyAllWindows()
ralph.jpg
mainlogo.png
Result:
可以在每个处理步骤之后添加imshow()来调试它吗?
(我几乎可以肯定,这些核心问题来自imutils.rotate()步骤)
解决方案:
https://mp.weixin.qq.com/s?__biz=MzIzMzYxNDIyOQ==&mid=2247484135&idx=1&sn=90524b02f0f3f9b22190131011e204e3&chksm=e883bc1ddff4350b557b6746ab733bb5aa5ce2e760b343bea15e4ccff57b7017604abdf541d1&token=1874966473&lang=zh_CN#rdmp.weixin.qq.com
#!/usr/bin/env python35
#OpenCV 4.0.1, Raspberry pi3B/+, IDE 3.5.
#Date: 4th March, 2019import cv2
import numpy as npimg1 = cv2.imread('ralph.jpg')
overlay_img1 = np.ones(img1.shape,np.uint8)*255
img2 = cv2.imread('mainlogo.png')
rows,cols,channels = img2.shape
overlay_img1[0:rows, 0:cols ] = img2
img2gray = cv2.cvtColor(overlay_img1,cv2.COLOR_BGR2GRAY)
ret, mask = cv2.threshold(img2gray,220,55,cv2.THRESH_BINARY_INV)
mask_inv = cv2.bitwise_not(mask)
temp1 = cv2.bitwise_and(img1,img1,mask = mask_inv)
temp2 = cv2.bitwise_and(overlay_img1,overlay_img1, mask = mask)
cv2.imshow('Temp2', temp2)
result = cv2.add(temp1,temp2)
cv2.imshow("Result",result)
cv2.imwrite("Result.jpg",result)
cv2.waitKey(0)
cv2.destroyAllWindows()
https://answers.opencv.org/question/193860/how-to-remove-the-black-border-around-rotated-masked-image-in-result-opencv-python/answers.opencv.org
opencv论坛_Opencv批量添加logo的解决方案相关推荐
- excel表格中添加combobox_excel高阶打印技巧:批量为表格添加logo,学会它老板都夸你厉害...
Hello,大家好,今天跟大家分享下我们如何为excel打印表批量的添加公司logo,在工作中我们经常会遇到将公司的logo放在表格的左上角或者右上角的问题.如果是一页表格我们可以在表格中直接插入lo ...
- 大量短视频怎么批量添加个人logo呢?
很多小伙伴在剪辑视频的时候,想要给自己的视频添加上个人水印,防止自己的劳动成果被别人搬运,但是没有找到好的方法,今天小编就来给大家分享一个可以快速批量给大量视频添加个人logo的简单方法,有需要的小伙 ...
- vue-qr 二维码 添加logo 下载单个二维码 批量下载二维码并打包
使用 vue-qr 生成二维码并可以添加logo 逻辑: 1.下载二维码生成插件 这里用的是qrcode 2.下载二维码 使用html2canvas(其实解释一个截图工具)将标签截图并下载下来 3. ...
- 批量添加DNS的A记录和PTR记录
批量添加DNS的A记录和PTR记录 搞SQL Server集群难免要搞域控制器,搞域控制器就不得不提DNS服务器,但DNS不只是为域服务,还可以作为ESX服务器所需的DNS服务器来复用,于是涉及到如何 ...
- 使用 Visual Studio 2019 批量添加代码文件头
应用场景介绍 在我们使用一些开源项目时,基本上都会在每个源代码文件的头部看到一段版权声明.一个项目或解决方案中源代码文件的个数少则几十,多则几千甚至更多,那么怎么才能给这么多文件方便地批量添加或者修改 ...
- c++ 添加按钮_使用 Visual Studio 2019 批量添加代码文件头
应用场景介绍 在我们使用一些开源项目时,基本上都会在每个源代码文件的头部看到一段版权声明.一个项目或解决方案中源代码文件的个数少则几十,多则几千甚至更多,那么怎么才能给这么多文件方便地批量添加或者修改 ...
- 使用Python,OpenCV制作全透明的logo水印,对图像添加水印
使用Python,OpenCV制作全透明的logo水印,对图像添加水印 1. 效果图 2. OpenCV自己制作一个logo(完全不透明的) 3. 制作水印图源码 4. 添加水印源码 5. 思考: 参 ...
- gitlab 批量添加用户并去掉邮箱验证(亲测有效)
批量添加git用户: 1.root账户登录:用户setting找到private Token 2.shell脚本 切换到home 目录 (这里的目录可以自行定) 3.使用 vi userinfo.t ...
- 怎样在二维码中间添加logo
我们在外面扫二维码付款的时候会发现有些商家的二维码做得很漂亮,在二维码的中间部分添加了自己的logo,这种二维码就更具有品牌识别性.还有在使用微信加好友时,可以看到对方的二维码中间放有微信头像,这种个 ...
最新文章
- emmc linux.格式化参数,大家都是怎么格式化emmc芯片的?能在ADB SHELL 中操作吗?uboot 就实现了GPT分区和烧录功能...
- php显示网卡信息,linux如何查看网卡信息
- 允许其它网段访问centos服务器_访问控制列表-ACL
- JavaWeb核心之Servlet
- 双系统删除分区后Grub启动失败
- 异部时钟电路的FPGA设计
- js $.ajax stop,jQuery.ajaxStop() 函数详解
- linux新硬盘分区及格式化和挂载分区到目录的方法
- 初识二进制2:指令系统
- JAVA基础语言——JAVASE
- 数学建模多元分析实例
- allegro异形孔导出gerber
- 离散数学学习笔记——命题逻辑
- springboot项目中访问不到html页面问题
- TI单芯片毫米波雷达软件架构研究(一)
- 笔记本固态硬盘温度测试软件,固态硬盘散热测试
- 菜鸟到大神的上位历程,即学即用走向人生巅峰
- linux桌面 仿android,Ubuntu粉丝必备!仿Ubuntu锁屏App体验
- GaussDB表设计最佳实践
- RXD and functions HDU-6061 NTT