Halcon联合编程适应图像的方法(picture)

public void FitSize(string path)

{

HObject ho_Image;// 定义图片

HTuple hv_width, hv_height = null;//定义图片大小

HTuple win_Row, win_Column, win_Width, win_height = null; //窗口的坐标和宽度和高度

HTuple cwin_Width, cwinHeight = null; // 计算出来展示的区域

// 读取图片

HOperatorSet.ReadImage(out ho_Image, path);

//获取图像大小

HOperatorSet.GetImageSize(ho_Image, out hv_width, out hv_height);

HOperatorSet.GetWindowExtents(win_handle, out win_Row, out win_Column, out win_Width, out win_height);//获取窗口的大小

//计算展示的高度 a = c/d * b

cwinHeight = 1.0 * win_height / win_Width * hv_width; // 宽度不变计算高度

if (cwinHeight > hv_height) //上下留相等黑边

{

cwinHeight = 1.0 * (cwinHeight - hv_height) / 2;

//展示图像哪一部分 坐标原点在图像的左上角

HOperatorSet.SetPart(win_handle, -cwinHeight, 0, cwinHeight + hv_height, hv_width);

HOperatorSet.DispObj(ho_Image, win_handle);

}

else // 高度不变 宽度自适应

{

cwin_Width = 1.0 * win_Width / win_height * hv_height;

cwin_Width = 1.0 * (cwin_Width - hv_width) / 2;

HOperatorSet.SetPart(win_handle, 0, -cwin_Width, hv_height, hv_width + cwin_Width);

HOperatorSet.DispObj(ho_Image, win_handle);

}

}

相关推荐
meilindehuzi_a2 小时前
Workflow 与 Agent 有什么区别:从 LangChain 流水线到智能体决策
前端·人工智能
这是个栗子2 小时前
前端开发中的常用工具函数(九)
开发语言·javascript·ecmascript·at
蓝创工坊Blue Foundry2 小时前
图片文字提取到 Excel:批量任务如何先定义要交付的字段
运维·服务器·开发语言·数据库·自动化·ocr·excel
会飞的小新2 小时前
C 标准库之 <fenv.h> 详解与深度解析
c语言·开发语言·microsoft
大不点wow3 小时前
Java序列化与反序列化:让对象走出JVM
java·开发语言·jvm
阿里嘎多学长3 小时前
2026-07-22 GitHub 热点项目精选
开发语言·程序员·github·代码托管
吃糖的小孩3 小时前
从只读页面到可控真实探针:我如何给 Owner Console 加手动诊断
前端
谷无姜3 小时前
为什么你的性能优化无效?可能是"木桶效应"在作祟
前端·性能优化
噢,我明白了3 小时前
Java中日期和字符串的处理
java·开发语言·日期
爱刷碗的苏泓舒3 小时前
C 语言 if-else 与 switch-case 分支语句对比
c语言·开发语言