C# halcon SubImage的使用

SubImage(HObject imageMinuend, HObject imageSubtrahend, out HObject imageSub, HTuple mult, HTuple add)

公式

x1=imageMinuend此行此列的灰度

x2=imageSubtrahend此行此列的灰度

则imageSub此行此列的灰度为;(x1-x2)*mult+add

溢出裁剪

以byte图为例,小于0,为0;大于255,为255

源码一

private void butTemp_Click(object sender, EventArgs e)

{

var img1 = WHCSHalCon.Base.CreateByteImage(new byte[] { 0 }, 1);

var img2 = WHCSHalCon.Base.CreateByteImage(new byte[] { 255 }, 1);

HObject img3;

HOperatorSet.SubImage(img2, img1, out img3, 2, 0);

byte[] b1 = WHCSHalCon.Base.ByteImageToArr(img3);

}

结果为255

源码二

private void butTemp_Click(object sender, EventArgs e)

{

var img1 = WHCSHalCon.Base.CreateByteImage(new byte[] { 0 }, 1);

var img2 = WHCSHalCon.Base.CreateByteImage(new byte[] { 255 }, 1);

HObject img3;

HOperatorSet.SubImage(img1, img2, out img3, 2, 0);

byte[] b1 = WHCSHalCon.Base.ByteImageToArr(img3);

}

结果为0

注意事项

imageMinuend和imageSubtrahend的CountObj和CountChannel必须相同。否则会崩溃

测试环境

Win7 VS2022 Halcon12

相关推荐
刚入坑的新人编程5 分钟前
C++qt(3)-按钮类控件
开发语言·c++·qt
开始了码7 分钟前
基于 Qt 实现多客户端 TCP 通信聊天室
开发语言·数据库·php
一只空白格12 分钟前
ThreadLocal的作用和底层原理
java·开发语言·jvm
心前阳光19 分钟前
Mirror网络库插件使用4
java·linux·网络·unity·c#·游戏引擎
1104.北光c°22 分钟前
JVM虚拟机【八股篇】:类加载机制与性能调优
java·开发语言·jvm·笔记·程序人生·调优·双亲委派
范特西.i30 分钟前
QT聊天项目(11)
开发语言·qt
九尾狐ai33 分钟前
从青鸟文化案例看校园文化建设的技术架构与实现方案
开发语言·python
先知后行。33 分钟前
qt八股文
开发语言·qt
Nuopiane37 分钟前
MyPal3(7)
java·开发语言