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

相关推荐
ECT-OS-JiuHuaShan3 分钟前
朱梁万有递归元定理,解构西方文明中心论幻觉
开发语言·人工智能·php
Aubrey-J5 分钟前
练习开发Skill——网页内容抓取Skill(website-content-fetch)
开发语言·人工智能
handler0114 分钟前
基础算法:分治
c语言·开发语言·c++·笔记·学习·算法·深度优先
2501_9249526925 分钟前
设计模式在C++中的实现
开发语言·c++·算法
大傻^27 分钟前
LangChain4j 1.4.0 快速入门:JDK 11+ 基线迁移与首个 AI Service 构建
java·开发语言·人工智能
程序猿_极客38 分钟前
【2025 最新】 MySQL 数据库安装教程(超详细图文版):从下载到配置一步到位
开发语言·数据库·mysql·mysql数据库安装
2501_9454251544 分钟前
C++编译期字符串处理
开发语言·c++·算法
我命由我1234544 分钟前
JS 开发问题:url.includes is not a function
开发语言·前端·javascript·html·ecmascript·html5·js
m0_733612211 小时前
模板编译期哈希计算
开发语言·c++·算法
阿蒙Amon1 小时前
C#常用类库-详解SqlSugar
开发语言·数据库·c#