分享给java的同学

工作需要对图片中的印章进行提取,这就用到了opencv的像素遍历

不用多废话,直接

/*** 遍历图片中全部红色部分* @author Administrator**/
public class Test3 {public static void main(String[] args) {//导入dllString relativelyPath = System.getProperty("user.dir");System.load(relativelyPath + "\\lib\\opencv_java310.dll");//扫描图片地址Mat mat = Imgcodecs.imread("E:/12.png");//扫描后的图片Mat hsv_image = new Mat(mat.size(), mat.type());Mat mat2=new Mat(mat.size(), mat.type());//将图片的格式转为HSV模式,原来为RGBImgproc.cvtColor(mat, hsv_image, Imgproc.COLOR_BGR2HSV);// 色调(H),饱和度(S),明度(V)// 下面就可以进行颜色的提取了int num=0;int num_rows = hsv_image.rows();int num_col = hsv_image.cols();for (int i = 0; i < num_rows; i++) {for (int j = 0; j < num_col; j++) {System.out.println("i:"+i+"  j:"+j);// 获取每个像素double[] clone = hsv_image.get(i, j).clone();double hun = clone[0]; // HSV hunif ((hun >= 0 && hun < 10) || (hun > 156 && hun < 180)) {if (clone[1] > 35 && clone[1] < 255) {if (clone[2] < 255 && clone[2] > 46) {// 红色范围,全部设置为黑色,clone[0] = 0;clone[1] = 0;clone[2] = 255;num++;mat2.put(i, j, clone);}}}}}System.out.println(num);String filename = "E:/gray.png";         //保存图像到Result目录中Imgcodecs.imwrite(filename, mat2);  }

原图:

结果如下:

效果相对模糊

实现了对红色印章的像素遍历,如果要判断图片中是否有印章,还需要使用霍夫圆来识别图片中的圆,详细操作可以看我其他帖子霍夫圆识别

如果大家有问题,可以在评论提出

在java中使用openCV遍历红色,像素遍历(仅限java)相关推荐

  1. Java中List集合的三种遍历方式(全网最详)

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  2. java中的进制输出转换_Java I/O : Java中的进制详解

    作者:李强强 上一篇,泥瓦匠基础地讲了下Java I/O : Bit Operation 位运算.这一讲,泥瓦匠带你走进Java中的进制详解. 一.引子 在Java世界里,99%的工作都是处理这高层. ...

  3. java中clone方法_Java Object clone()方法– Java中的克隆

    java中clone方法 Cloning is the process of creating a copy of an Object. Java Object class comes with na ...

  4. Java中 List、Set、Map遍历方式以及性能比较

    目录 一.简介 二.遍历方式 1.ArrayList遍历方式 (1)for循环遍历 (2)foreach循环遍历 (3)Iterator迭代器遍历 2.LinkedList遍历方式 (1)for循环遍 ...

  5. JAVA中哈希表的使用-遍历map集合

    java中哈希表的使用第二例-即将罗马数字转换为整数 代码: class Solution { public int romanToInt(String s) { HashMap<Charact ...

  6. Java中HashMap和TreeMap的区别深入理解,java开发面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  7. Java中普通字符串转json,老司机帮您java中如何将字符串转成json

    电脑现已成为我们工作.生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到java中如何将字符串转成json的问题,如果我们遇到了java中如何将字符串转成json的情况,该怎么处理怎么才能解决 ...

  8. Java main方法_解释Java中的main方法,及其作用_一个java文件中可包含多个main方法

    public static void main(String[] args) {} 或者 public static void main(String args[]) {} main方法是我们学习Ja ...

  9. java中execution的作用_一文初步了解Java虚拟机

    大家都知道,Java中JVM的重要性,学习了JVM你对Java的运行机制.编译过程和如何对Java程序进行调优相信都会有一个很好的认知. 什么是JVM? JVM(Java Virtual Machin ...

最新文章

  1. windows环境下,mysql的root密码丢失后重置方法
  2. 用于视频超分辨率的可变形三维卷积
  3. 苏黎世大学 AI 新研究:仅用少量样本生成高质量光声图像
  4. mysql监控 hp_0066 使用PHP和MySQL实现学生分数信息管理
  5. opencv获取摄像头帧率分辨率
  6. c#实现手机号码归属地查询
  7. 【汇总】flash单个文件上传
  8. 斜挎包长度到哪里合适_斜挎包带子多长合适 看个人身高
  9. oracle存在于A不存在于B,Oracle试题
  10. HTML+CSS学习笔记(3)- 认识标签(2)
  11. 如何对大数据进行处理与分析
  12. GIS_WGS84经纬度坐标系_Web墨卡托坐标系_相互转换代码
  13. Spring中Bean的作用域差别
  14. 制作ESXi6.5启动盘
  15. File和IO流应用,剪切文件夹
  16. Windows Cmd控制台程序会被鼠标单击暂停的解决方法
  17. 调用高德地图API接口,实现地铁站经纬度采集
  18. apache服务器查看网络爬虫记录的方法说明
  19. 使用jQuery发送简单的Ajax请求
  20. python爬虫企业工商信息_Python 爬虫进阶必备 | 企业信用公示系统公告加密解析...

热门文章

  1. SQL数据库管理—DBCC数据库修复
  2. 计算机打印机能不能取消正在,删除HP打印机驱动程序. 打印机驱动程序正在使用中,无法删除...
  3. 客观评价,一起看看iPhone 12是否值得你入手?
  4. 集成Euraka的SpringBoot工程禁止输出日志:ConfigClusterResolver : Resolving eureka endpoints via configuration的方法
  5. 一个Android菜鸟“面霸”的面试经历,如何少走弯路多加薪!
  6. 自建服务器打印机,打印机服务器搭建 -cups
  7. Talk预告 | 斯坦福大学石佳欣:无监督学习的未来-两条路径和统一视角
  8. 剪辑视频的软件怎么二次剪辑才算原创
  9. 传真百科:电子邮件能取代传真吗
  10. Process用法与进程详解