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

相关推荐
爱滑雪的码农17 分钟前
Java基础十一 流(Stream)、文件(File)和IO
java·开发语言·python
叶小鸡20 分钟前
Java 篇-项目实战-天机学堂(从0到1)-day11
java·开发语言
格林威20 分钟前
线阵工业相机:线阵图像出现“波浪纹”,是机械振动还是编码器问题?
开发语言·人工智能·数码相机·计算机视觉·视觉检测·工业相机·线阵相机
liliangcsdn30 分钟前
LLM如何辅助RAG从大量文档中筛选目标文档
开发语言·人工智能
无忧.芙桃35 分钟前
C++IO库的超详细讲解
开发语言·c++
朗迹 - 张伟42 分钟前
用AI开发QT——Qt与Trae开发环境搭建
开发语言·qt·策略模式
雨辰AI1 小时前
从 MySQL 迁移至人大金仓 V9 完整改造指南|分页 / 函数 / 语法兼容全部解决
java·开发语言·数据库·后端·mysql·政务
MATLAB代码顾问1 小时前
改进鲸鱼优化算法(IWOA)求解柔性作业车间调度问题(FJSP)——附MATLAB代码
开发语言·算法·matlab
阿里嘎多学长1 小时前
2026-05-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管