当前位置: 首页 > news >正文

Opencv基于文字检测去图片水印

做了一个简单的去水印功能,基于文字检测去图片水印。效果如下:

插件功能代码参考如下:

using namespace cv::dnn;
TextDetectionModel_DB *textDetector=0;
void getTextDetector()
{if(textDetector)return;String modelPath = "text_detection_DB_TD500_resnet18_2021sep.onnx";  //模型权重文件textDetector=new TextDetectionModel_DB(modelPath);float binThresh = 0.3;                                      //二值图的置信度阈值float polyThresh  = 0.5 ;                                   //文本多边形阈值double unclipRatio = 2.0;      //检测到的文本区域的未压缩比率,gai比率确定输出大小uint maxCandidates = 200;textDetector->setBinaryThreshold(binThresh).setPolygonThreshold(polyThresh).setUnclipRatio(unclipRatio).setMaxCandidates(maxCandidates);double scale = 1.0 / 255.0;int height = 736;                                                   //输出图片长宽int width = 736;Size inputSize = Size(width, height);Scalar mean = Scalar(122.67891434, 116.66876762, 104.00698793);textDetector->setInputParams(scale, inputSize, mean);}void deWaterMarkTextDetection(Mat &input,Mat &output,Mat &src,string)
{getTextDetector();// 推理std::vector<std::vector<Point>> results;textDetector->detect(input, results);Mat mask = Mat::zeros(input.size(), CV_8U);fillPoly(mask, results,Scalar::all(255));//将掩模进行膨胀,使其能够覆盖图像更大区域Mat kernel = getStructuringElement(MORPH_RECT, Size(5, 5));dilate(mask, mask, kernel);//使用inpaint进行图像修复Mat result;inpaint(src, mask, output, 1, INPAINT_NS);
}

相关文章:

Opencv基于文字检测去图片水印

做了一个简单的去水印功能&#xff0c;基于文字检测去图片水印。效果如下&#xff1a; 插件功能代码参考如下&#xff1a; using namespace cv::dnn; TextDetectionModel_DB *textDetector0; void getTextDetector() {if(textDetector)return;String modelPath "text_de…...

jdbc235

概念&#xff1a;java database connectivity java数据库连接 java语言操作数据库 定义了一套操作所有关系型数据库的规则&#xff08;接口&#xff09; 本质&#xff1a;其实是官方公司定义了一套操作所有关系型数据库的规则&#xff0c;即接口。各个数据库厂商去实现这套接…...

库仑定律和场强

1、库伦定律 两个电荷相互作用的力。 力是矢量&#xff0c;有大小和方向。 1.1、力的大小 1.2、力的方向 在两个电荷的连线上&#xff0c;同种电荷相互排斥&#xff0c;异种电荷相互吸引。 真空&#xff0c;不是必要条件&#xff0c;修改公式中介电常数的值仍然满足库伦定律。…...

Android安卓实战项目(13)---记账APP详细记录每天的收入和支出并且分类统计【生活助手类APP】强烈推荐自己也在用!!!(源码在文末)

Android安卓实战项目&#xff08;13&#xff09;—记账APP详细记录每天的收入和支出并且分类统计【生活助手类APP】强烈推荐自己也在用&#xff01;&#xff01;&#xff01;&#xff08;源码在文末&#x1f415;&#x1f415;&#x1f415;&#xff09; 一.项目运行介绍 B站…...

嵌入式开发之syslog和rsyslog构建日志记录

1.syslogd作客户端 BusyBox v1.20.2 (2022-04-06 16:19:14 CST) multi-call binary.Usage: syslogd [OPTIONS]System logging utility-n Run in foreground-O FILE Log to FILE (default:/var/log/messages)-l N Log only messages more urge…...

Jaeger的经典BUG原创

前端&#xff0c;笔者在使用Jaeger进行Trace监控的时候&#xff0c;当数据量增大到一定数量级时&#xff0c;出现了一次CPU暴增导致节点服务器挂了的经典案例&#xff0c;这里对案例进行一个简单的抽象&#xff0c;供大家参考&#xff1a; 首先通过pprof对耗时的函数进行定位&…...

四款简洁好看 自适应的APP下载单页源码

分享四款简洁好看 自适应的APP下载单页源码&#xff0c;采用了底部自动获取ICP备案号&#xff0c;还有蓝奏云文件直链解析。不光可以做APP下载引导页&#xff0c;也可以随便改下按钮做网站引导页&#xff0c;自由发挥即可&#xff01; 蓝奏云直链解析的好处&#xff1a;APP放在…...

【服务器】交换机带外管理和带内管理

一、交换机的带外管理是什么&#xff1f; 在带外管理模式中&#xff0c;网络的管理控制信息与用户网络的承载业务信息在不同的逻辑信道传送。 带外管理最大的优势在于&#xff0c;当网络出现故障中断时数据传输和管理都可以正常进行——不同的物理通道传送管理控制信息和数据…...

Kotlin的内置函数 apply、let、run、with、also

let 1.let函数返回类型&#xff0c;是根据匿名函数的最后一行变化而变化 2.let函数中的匿名函数里面持有的是it 集合自身 fun main() {var num1 1var num2 1var result:Intresult num1 num2var str result?.let {//传入本身&#xff0c;it指代本身即result,result不为空…...

2023年人工景点行业研究报告

第一章 行业概况 1.1 定义及分类 人工景点行业通常指的是设计和构建的为提供娱乐、教育或文化体验的景点。这些景点可能包括主题公园&#xff0c;博物馆&#xff0c;动物园&#xff0c;水族馆&#xff0c;科学中心&#xff0c;历史遗迹&#xff0c;艺术展览等。这个行业通常包…...

react轮播图

这里 我用的是组件&#xff1a; 网址&#xff1a;Collapse 折叠面板 - Ant Design Mobile 1.首先 先声明一个变量 2、把需要的数据存存进去 3、组件内容复制过来&#xff08;这里用到的是map循环&#xff09; 然后图片就出来了 就是这个简单 哈哈哈哈&#xff01;&#xff01…...

Openlayers 叠加天地图-中国近海海洋等深面图层服务

Openlayers 叠加天地图-中国近海海洋等深面图层服务 核心代码完整代码&#xff1a;在线示例 偶然发现天地图有一个近海海洋图层&#xff0c;觉得不错&#xff0c;于是尝试叠加一下&#xff0c;花费了一些时间&#xff0c;叠加成功&#xff0c;这里分享一下。 本文包括核心代码…...

uniapp移动端h5设计稿还原

思路 动态设置html的font-size大小 实现步骤 先创建一个public.css文件&#xff0c;设置初始的font-size大小 /* 注意这样写 只能使用css文件, scss 是不支持的, setProperty 只适用于原生css上 */ html {--gobal-font-size: 0.45px; } .gobal-font-size {font-size: var(--g…...

后端数据配置相对路径,前端添加网站根 URL (根路径)- js获取网站项目根路径- 获取根路径后的第一个斜杠前 / 的项目- - 判断url包含某字符串

1、js获取网站项目根路径 js获取项目根路径&#xff0c;如下&#xff1a; 原 http://localhost:8080/testproject/test.html 根路径&#xff1a;http://localhost:8080 function getRootPath(){//获取当前网址&#xff0c;// 如&#xff1a; http://localhost:8080/testpro…...

deepspeed多机多卡并行训练指南

文章目录 前言离线配置训练环境共享文件系统多台服务器之间配置互相免密登录pdsh多卡训练可能会碰到的问题注意总结 前言 我的配置&#xff1a; 7机14卡&#xff0c;每台服务器两张A800 问&#xff1a;为啥每台机只挂两张卡&#xff1f; 答&#xff1a;给我的就这样的&#…...

9.Redis-zset

zset zset 有序集合 -> 升序常用命令zaddzcardzcountzrangezrevrange -> reverse 逆序zrangebyscorezpopmaxzpopminbzpopmax / bzpopminzrankzrevrankzscorezremzremrangebyrankzremrangebyscorezincrby集合间操作zinter -> 交集zunion -> 并集zdiff -> 差集zin…...

云计算的三个主要服务模型:IaaS、PaaS 和 SaaS

文章目录 介绍基础设施即服务&#xff08;Infrastructure as a Service&#xff0c;IaaS&#xff09;平台即服务&#xff08;Platform as a Service&#xff0c;PaaS&#xff09;软件即服务&#xff08;Software as a Service&#xff0c;SaaS&#xff09; 区别基础设施即服务&…...

spring ioc,DI,AOP概述

Spring是一个轻量级的Java开发框架。其中&#xff0c;IoC、DI和AOP是Spring框架的核心概念。 IoC&#xff08;Inversion of Control&#xff0c;控制反转&#xff09;&#xff1a;IoC是一种设计模式&#xff0c;是指将对象的创建、管理和控制权交给IoC容器&#xff0c;由IoC容器…...

meethigher-Apache Poi 实现Excel多级联动下拉框

由于最近做的功能&#xff0c;需要将接口返回的数据列表&#xff0c;输出到excel中&#xff0c;以供后续导入&#xff0c;且网上现有的封装&#xff0c;使用起来都较为麻烦&#xff0c;故参考已有做法封装了工具类。 使用apache poi实现excel联动下拉框思路 创建隐藏单元格&a…...

基于食肉植物算法优化的BP神经网络(预测应用) - 附代码

基于食肉植物算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码 文章目录 基于食肉植物算法优化的BP神经网络&#xff08;预测应用&#xff09; - 附代码1.数据介绍2.食肉植物优化BP神经网络2.1 BP神经网络参数设置2.2 食肉植物算法应用 4.测试结果&#xff1a;5…...

2026年需求管理工具盘点:主流软件对比、测评与选型实用指南

本文盘点 ONES、Tower、Jira、Azure DevOps、Asana、ClickUp、monday.com、Notion、Linear、YouTrack 这 10 款需求管理工具&#xff0c;围绕需求收集、拆解、优先级、追踪闭环和团队协作展开测评&#xff0c;帮助选型人员更快判断哪类工具适合自己的团队。刚做项目经理时&…...

2025终极指南:如何用PyGlossary打破词典格式壁垒

2025终极指南&#xff1a;如何用PyGlossary打破词典格式壁垒 【免费下载链接】pyglossary A tool for converting dictionary files aka glossaries. Mainly to help use our offline glossaries in any Open Source dictionary we like on any operating system / device. 项…...

如何通过Excel MCP Server实现无Excel环境下的自动化表格处理

如何通过Excel MCP Server实现无Excel环境下的自动化表格处理 【免费下载链接】excel-mcp-server A Model Context Protocol server for Excel file manipulation 项目地址: https://gitcode.com/gh_mirrors/ex/excel-mcp-server 你是否曾因没有安装Microsoft Excel而无…...

setup-java企业级实践:大型项目的依赖缓存和版本矩阵测试

setup-java企业级实践&#xff1a;大型项目的依赖缓存和版本矩阵测试 【免费下载链接】setup-java Set up your GitHub Actions workflow with a specific version of Java 项目地址: https://gitcode.com/gh_mirrors/se/setup-java 在现代软件开发中&#xff0c;Java环…...

如何在Windows电脑上轻松安装安卓应用:APK-Installer终极指南

如何在Windows电脑上轻松安装安卓应用&#xff1a;APK-Installer终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经想在Windows电脑上直接运行安卓应用…...

三极管Ube到底变不变?从静态分析到动态放大,一张图帮你彻底搞懂

三极管Ube到底变不变&#xff1f;从静态分析到动态放大&#xff0c;一张图帮你彻底搞懂 刚接触三极管放大电路时&#xff0c;很多初学者都会被一个看似矛盾的现象困扰&#xff1a;教科书告诉我们三极管的Ube电压恒定为0.7V&#xff0c;但在分析动态放大过程时&#xff0c;又说U…...

2026年国产数据库大盘点与趋势:自主可控时代的数据库生态

一、2026年国产数据库市场概况 1. 市场发展现状 2026年国产数据库市场呈现稳步增长态势。在信创政策深化、数据安全法规完善的大背景下&#xff0c;数据库作为核心基础软件&#xff0c;其国产化进程持续推进。 2026年主要厂商市场表现&#xff1a; 金仓KES&#xff1a;在政务领…...

从 0 到 1:构建一个供 AI Agent 使用的图像生成技能系统

前言 当我们把 AI Agent 接进工作流后&#xff0c;几乎每天都会遇到一个痛点&#xff1a;图像生成这件事&#xff0c;每次都要靠 Agent 自己拼提示词。没有风格库、没有模板、没有搜索——结果全靠"手感"&#xff0c;输出质量参差不齐。 image-craft 这个项目&…...

边缘金融大语言模型的高效部署与实时推理优化

1. 边缘金融大语言模型的技术背景与挑战金融行业每天产生海量非结构化数据&#xff0c;包括客户咨询记录、财报文本、新闻舆情等。传统NLP模型在处理这类数据时面临两个核心痛点&#xff1a;一是无法理解金融专业术语背后的复杂语义&#xff08;如"可转债"在不同上下…...

3分钟学会:免费飞书文档转Markdown终极指南

3分钟学会&#xff1a;免费飞书文档转Markdown终极指南 【免费下载链接】cloud-document-converter Convert Lark Doc to Markdown 项目地址: https://gitcode.com/gh_mirrors/cl/cloud-document-converter 想象一下&#xff0c;你花了好几个小时在飞书上精心排版的技术…...