HOperatorSet.Rgb1ToGray的原理研究


原始定义

rgb1_to_gray 类似函数rgb3_to_gray  
我们来试验一下,转换细节。我创建三个1*1的灰度图,分别测试以小六种情况。
一,R=100,G=0,B=0
二,R=200,G=0 ,B = 0
三,R=0  ,G=200,B=0
四,R=0,G=0,B=200
五,R=200,G=200,B=0
六,R=200,G=200,B=200


结果分别为:


一,30
二,60
三,117
四,23
五,177
六,200

规则很明显,从官网查到的如下,和我们的测试结果类似。
gray = 0.299 * red + 0.587 * green + 0.114 * blue .

源码如下:


 byte[] barr = { 200 };
            HObject imgR = WHCSHalCon.Base.CreateByteImage(barr, 1);
            barr[0] = 200;
            HObject imgG = WHCSHalCon.Base.CreateByteImage(barr, 1);
            barr[0] = 200;
            HObject imgB = WHCSHalCon.Base.CreateByteImage(barr, 1);
            HObject imgGray;
            HOperatorSet.Rgb3ToGray(imgR, imgG, imgB, out imgGray);
            HTuple ptr, tmp;
            HOperatorSet.GetImagePointer1(imgGray, out ptr, out tmp, out tmp, out tmp);
            byte[] bimg = new byte[barr.Length];
            System.Runtime.InteropServices.Marshal.Copy(ptr, bimg, 0, barr.Length);

开发环境:win7 + VS2022 + halcon12

https://img-blog.csdnimg.cn/ea2601b3918f4aef836b5fe30da2ebf7.gif#pic_center#pic_center

其它

学院课程

基础算法的C++实现课程,请点击下面的CSDN学院的链接。

2024年1月15之前完全免费,之后绝大部分免费

https://edu.csdn.net/course/detail/38771

C#入职培训

此课程的目的:让新同事更快完成从学生到C#程序员的转换,更快上手完成C#的开发工作。

https://edu.csdn.net/course/detail/38768

C++入职培训

让新同事更快完成从学生到C++程序员的转换,更快上手完成C++的开发工作。

https://edu.csdn.net/course/detail/32049

运行验证环境

Win10 VS2022 Ck++17 或win7 VS2019 C++17

每天都补充正能量

好好学习,天天向上。

事无终始,无务多业。

是故置本不安者,无务丰末。

相关下载

如果你时间宝贵,只想看精华,请到CSDN下载频道下载《闻缺陷则喜算法册》doc版

https://download.csdn.net/download/he_zhidan/88348653

https://img-blog.csdnimg.cn/f95ddae62a4e43a68295601c723f92fb.gif#pic_center

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闻缺陷则喜何志丹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值