码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Opencv基于文字检测去图片水印


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

    插件功能代码参考如下:

    1. using namespace cv::dnn;
    2. TextDetectionModel_DB *textDetector=0;
    3. void getTextDetector()
    4. {
    5. if(textDetector)return;
    6. String modelPath = "text_detection_DB_TD500_resnet18_2021sep.onnx"; //模型权重文件
    7. textDetector=new TextDetectionModel_DB(modelPath);
    8. float binThresh = 0.3; //二值图的置信度阈值
    9. float polyThresh = 0.5 ; //文本多边形阈值
    10. double unclipRatio = 2.0; //检测到的文本区域的未压缩比率,gai比率确定输出大小
    11. uint maxCandidates = 200;
    12. textDetector->setBinaryThreshold(binThresh)
    13. .setPolygonThreshold(polyThresh)
    14. .setUnclipRatio(unclipRatio)
    15. .setMaxCandidates(maxCandidates);
    16. double scale = 1.0 / 255.0;
    17. int height = 736; //输出图片长宽
    18. int width = 736;
    19. Size inputSize = Size(width, height);
    20. Scalar mean = Scalar(122.67891434, 116.66876762, 104.00698793);
    21. textDetector->setInputParams(scale, inputSize, mean);
    22. }
    23. void deWaterMarkTextDetection(Mat &input,Mat &output,Mat &src,string)
    24. {
    25. getTextDetector();
    26. // 推理
    27. std::vector> results;
    28. textDetector->detect(input, results);
    29. Mat mask = Mat::zeros(input.size(), CV_8U);
    30. fillPoly(mask, results,Scalar::all(255));
    31. //将掩模进行膨胀,使其能够覆盖图像更大区域
    32. Mat kernel = getStructuringElement(MORPH_RECT, Size(5, 5));
    33. dilate(mask, mask, kernel);
    34. //使用inpaint进行图像修复
    35. Mat result;
    36. inpaint(src, mask, output, 1, INPAINT_NS);
    37. }

    《QT 插件化图像算法研究平台》其它内容:

    Opencv 图像金字塔----高斯和拉普拉斯

    OpenCV仿Photoshop曲线调整图像亮度与色彩

    QT 插件化图像算法软件架构

    Opencv 图像暗通道调优去雾

    opencv 提取选中区域内指定 hsv 颜色的水印

    Opencv 手工选择图片区域去水印

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

    QT 插件化图像算法研究平台

    Opencv 图像亮度调节的几种方式

    Opencv使用QT的线程注意事项

    欢迎广大朋友沟通交流,微信/QQ:23245175,加好友,请备注:插件软件。

  • 相关阅读:
    【MySQL入门】第三话 · MySQL中常见的数据类型
    前端面试中Vue的有经典面试题一
    飞讯软件受邀参加天翼云中国行·惠州站活动,并签约生态合作共推工业数字化转型
    Redis进阶——相互关注&Feed流推送
    最详解决:jupyter notebook不会自动打开浏览器问题
    【车载开发系列】UDS诊断---诊断故障清除($0x14)
    软件集成商如何借助小程序降本增效
    Windows 文件共享
    python用pychart库,实现将经纬度信息在地图上显示
    触控笔哪个牌子好用?平板电脑触控笔品牌排行榜
  • 原文地址:https://blog.csdn.net/stonewu/article/details/132614519
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号