使用OpencvSharp的InRange函数对图像进行RGB颜色的分割。

 using System;
using OpenCvSharp;
using OpenCvSharp.Extensions;
using OpenCvSharp.XFeatures2D;
using static OpenCvSharp.Cv2;
namespace Mycv
{
public class cvGO
{
/// <summary>
/// 分割颜色得到面积占比的大小
/// </summary>
/// <param name="srcbmp">原图</param>
/// <param name="dstbmp">结果图</param>
/// <param name="value_Low">最低值RGB(0-255) ([0]:R,[1]:G,[2]:B)这里用一个长度为3的数组存放最低RGB值</param>
/// <param name="value_High">最高值RGB(0-255)([0]:R,[1]:G,[2]:B)这里用一个长度为3的数组存放最高RGB值 </param>
public float Color_Inrange(Bitmap srcbmp, out Bitmap dstbmp, int[] value_Low, int[] value_High)
{
//bitmap转mat
using (Mat src = BitmapConverter.ToMat(srcbmp))
using (Mat dst = new Mat())
{
//根据传进来的2个数组新建两个Scalar
Scalar cvL = new Scalar(value_Low[], value_Low[], value_Low[]);
Scalar cvH = new Scalar(value_High[], value_High[], value_High[]); //这一步就是颜色分割
InRange(src, cvL, cvH, dst);
//Inrange的时候已经给dst赋值了,这里是mat转bitmap
dstbmp = dst.ToBitmap();
//用CountNonZero来得到面积,然后再计算占比并返回这个值
return (CountNonZero(dst) / (src.Width * src.Height * 1.0f) * );
}
}
}
}

最新文章

  1. 【转载】10 个实用技巧,让 Finder 带你飞
  2. PHP 使用 mcrypt 扩展中的 mcrypt_encrypt() 和 mcrypt_decrypt() 对数据进行加密和解密
  3. 线性四叉树十进制Morton码计算示例
  4. SslUtil
  5. c++库大全
  6. CentOS 6.0下面安装JDK7
  7. Android(java)学习笔记241:多媒体之 MediaPlayer使用
  8. freemarker定义自己的标签错误(一)
  9. Storm学习笔记六
  10. 4.Apache Spark的工作原理
  11. Travel 并查集
  12. Windows系统Nessus离线(Offline) 版的安装
  13. IDEA-使用技巧
  14. Android.mk 中常用“LOCAL_” 变量
  15. js面对对象编程(二):属性和闭包
  16. 《Android编程权威指南》
  17. WebRTC源码分析(一):安卓相机采集实现分析
  18. Java bean中布尔类型使用注意
  19. IOS7开发~Images.xcassets
  20. [Haskell]解决hslua unknown symbol `___s trtod&#39;的问题

热门文章

  1. Dynamics CRM - 如何创建一个新的 Organization
  2. 108.生成和下载csv文件
  3. 深入理解JVM - 垃圾收集器
  4. [LC] 51. N-Queens
  5. IDEA查看代码最近修改人及日期
  6. Popular generalized linear models|GLMM| Zero-truncated Models|Zero-Inflated Models|matched case–control studies|多重logistics回归|ordered logistics regression
  7. JavaSE--【转】网络安全之证书、密钥、密钥库等名词解释
  8. C++对象的动态建立与释放
  9. swoole使用协程
  10. sql server2008 装上后,总是出现machine.config line136,或者 出现 配置错误 无法识别的配置节 system.serviceModel 。