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

相关推荐
星空露珠10 小时前
28种颜色对应名称,
开发语言·数据库·算法·游戏·lua
码云数智-大飞10 小时前
PHP 接口开发规范:统一返回格式、异常处理与参数校验
开发语言·php
浮江雾10 小时前
Flutter第十七节-----路由管理(3)
android·开发语言·前端·javascript·flutter·入门
admin and root10 小时前
「移动安全」安卓APP 反编译&frida脱壳技巧分享
android·开发语言·python·web安全·微信小程序·移动安全·攻防演练
踏月的造梦星球10 小时前
DM8 DSC 单机双实例部署
运维·开发语言·数据库
An_s10 小时前
c++对接pdfium(一)win系统篇
开发语言·c++
Zwarwolf10 小时前
Rust零散知识点项目汇总
开发语言·rust
-银雾鸢尾-10 小时前
C#中HashTable相关方法
开发语言·c#
茯苓gao10 小时前
嵌入式开发笔记:Qt信号槽机制深度解析——从原理到实战的全方位指南
开发语言·笔记·嵌入式硬件·qt·学习
ihuyigui11 小时前
海外签收通知短信接口
android·java·开发语言·前端·数据库·后端