测试 halcon measure_projection 算子
期望结果完全相同,但是下面的测试结果和halcon的差值如下:
[0.132838, 0.231991, 0.265157, 0.296903, 0.0998573, 0.165907, 0.230686, 0.130266, 0.0977104, 0.197109, 0.198173, 0.197086, 0.190943, 0.177665, 0.163521, 0.146541, 0.161362, 0.166666, 0.22818, 0.186114, 0.196333, 0.255945, 0.14496, 0.205199, 0.262202, 0.201859, 0.173616, 0.173016, 0.173485, 0.173227, 0.171494, 0.257541, 0.171186, 0.141769, 0.0852231, 0.257203, 0.198859, 0.170551, 0.25673, 0.171491, 0.170175, 0.169464, 0.198114, 0.169922, 0.169473, 0.1695, 0.168997, 0.139408, 0.195358, 0.193962, 0.221091, 0.19246, 0.246518, 0.138458, 0.194492, 0.193142, 0.217299, 0.188277, 0.16121, 0.106746, 0.106695, 0.104717, 0.154996, 0.17956, 0.199884, 0.174948, 0.174217, 0.125464, 0.234857, 0.197361, 0.239242, 0.217724, 0.220922, 0.160648, 0.19362, 0.1959, 0.196964, 0.197266, 0.229685, 0.193291, 0.191924, 0.191487, 0.288308, 0.191503, 0.223271, 0.285233, 0.0954785, 0.157538, 0.187701, 0.284095, 0.190475, 0.18948, 0.188329, 0.187838, 0.186164, 0.217482, 0.277055, 0.215032, 0.15109, 0.27215, 0.211512, 0.208731, 0.286509, 0.262083, 0.31329, 0.315317, 0.358043, 0.396789, 0.403176, 0.397609, 0.39305, 0.392336, 0.19589, 0.260681, 0.459158, 0.330526, 0.19935, 0.587357, 0.518498, 0.44198, 0.24967]
结果并不小,不知道问题出在哪里?

get_grayval_interpolated 和自己实现的双线性差值的结果是完全相同的
dev_close_window()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
dev_set_window (WindowHandle)
read_image (Image, 'fabrik')
get_image_size (Image, Width, Height)
CenterRow:=Height/2-50
CenterCol:=Width/2
degPhi:=45
Phi:=rad(degPhi)
Length1:=60
Length1:=int(floor(Length1))
Length2:=1
gen_measure_rectangle2 (CenterRow, CenterCol, -Phi, Length1, Length2, Width, Height, 'bilinear', MeasureHandle)
measure_projection (Image, MeasureHandle, GrayValues)
disp_rectangle2(WindowHandle,CenterRow, CenterCol, -Phi, Length1, Length2)
RowAry:=[]
ColAry:=[]
RowAry[Length1]:=CenterRow
ColAry[Length1]:=CenterCol
RowOffsetAry[Length2]:=0
ColOffsetAry[Length2]:=0
clockWise:=true
if(clockWise)
Phi2:=rad(degPhi-90)
else
Phi2:=rad(degPhi+90)
endif
RowOffsetStep:=sin(Phi2)
ColOffsetStep:=cos(Phi2)
for Index := 1 to Length2 by 1
RowOffsetAry[Length2+Index]:=RowOffsetStep*Index
ColOffsetAry[Length2+Index]:=ColOffsetStep*Index
RowOffsetAry[Length2-Index]:=-RowOffsetAry[Length2+Index]
ColOffsetAry[Length2-Index]:=-ColOffsetAry[Length2+Index]
endfor
gen_image_const (Image1, 'real', Length1*2+1, Length2*2+1)
get_image_size (Image1, Width1, Height1)
RowOffsetStep:=sin(Phi)
ColOffsetStep:=cos(Phi)
for Index := 1 to Length1 by 1
RowAry[Length1+Index]:=CenterRow+Index*RowOffsetStep
ColAry[Length1+Index]:=CenterCol+Index*ColOffsetStep
RowAry[Length1-Index]:=CenterRow-Index*RowOffsetStep
ColAry[Length1-Index]:=CenterCol-Index*ColOffsetStep
endfor
GrayValues2:=[]
copy_image(Image, DupImage)
for Index := 0 to Width1-1 by 1
get_grayval_interpolated (Image, RowAry[Index], ColAry[Index], 'bilinear', Grayval)
left:= int(floor(ColAry[Index]))
right:=left+1
top:= int(floor(RowAry[Index]))
bottom:=top+1
a:=ColAry[Index]-left
b:=RowAry[Index]-top
get_grayval(Image,top,left,topLeftGrayVal)
get_grayval(Image,top,right,topRightGrayVal)
get_grayval(Image,bottom,left,bottomLeftGrayVal)
get_grayval(Image,bottom,right,bottomRightGrayVal)
Grayval:=(1 - a)*(1 - b)*topLeftGrayVal+ a*(1 - b)*topRightGrayVal +(1 - a)*b*bottomLeftGrayVal + a*b*bottomRightGrayVal
set_grayval (Image1, Length2, Index, Grayval)
set_grayval(DupImage,int(RowAry[Index]),int(ColAry[Index]),0)
AVGGrayVal:=Grayval
for Index2 := 1 to Length2 by 1
Row:=RowAry[Index]+RowOffsetAry[Length2+Index2]
Col:=ColAry[Index]+ColOffsetAry[Length2+Index2]
get_grayval_interpolated (Image, Row, Col, 'bilinear', Grayval)
left:= int(floor(Col))
right:=left+1
top:= int(floor(Row))
bottom:=top+1
a:=Col-left
b:=Row-top
get_grayval(Image,top,left,topLeftGrayVal)
get_grayval(Image,top,right,topRightGrayVal)
get_grayval(Image,bottom,left,bottomLeftGrayVal)
get_grayval(Image,bottom,right,bottomRightGrayVal)
Grayval:=(1 - a)*(1 - b)*topLeftGrayVal+ a*(1 - b)*topRightGrayVal +(1 - a)*b*bottomLeftGrayVal + a*b*bottomRightGrayVal
set_grayval (Image1, Length2+Index2, Index, Grayval)
set_grayval(DupImage,int(Row),int(Col),0)
AVGGrayVal:=AVGGrayVal+Grayval
Row:=RowAry[Index]+RowOffsetAry[Length2-Index2]
Col:=ColAry[Index]+ColOffsetAry[Length2-Index2]
get_grayval_interpolated (Image, Row, Col, 'bilinear', Grayval)
left:= int(floor(Col))
right:=left+1
top:= int(floor(Row))
bottom:=top+1
a:=Col-left
b:=Row-top
get_grayval(Image,top,left,topLeftGrayVal)
get_grayval(Image,top,right,topRightGrayVal)
get_grayval(Image,bottom,left,bottomLeftGrayVal)
get_grayval(Image,bottom,right,bottomRightGrayVal)
Grayval:=(1 - a)*(1 - b)*topLeftGrayVal+ a*(1 - b)*topRightGrayVal +(1 - a)*b*bottomLeftGrayVal + a*b*bottomRightGrayVal
set_grayval (Image1, Length2-Index2, Index, Grayval)
set_grayval(DupImage,int(Row),int(Col),0)
AVGGrayVal:=AVGGrayVal+Grayval
endfor
AVGGrayVal:=AVGGrayVal/Height1
GrayValues2[Index]:=AVGGrayVal
endfor
for Index := 0 to |GrayValues2|-1 by 1
GrayValuesDidff[Index]:=GrayValues2[Index]-GrayValues[Index]
endfor
相关文章:
测试 halcon measure_projection 算子
期望结果完全相同,但是下面的测试结果和halcon的差值如下: [0.132838, 0.231991, 0.265157, 0.296903, 0.0998573, 0.165907, 0.230686, 0.130266, 0.0977104, 0.197109, 0.198173, 0.197086, 0.190943, 0.177665, 0.163521, 0.146541, 0.161362, 0.166666, 0.2281…...
网络安全岗位必须知道到:高性能抓取,多线程,异步逆向分析(Js逆向破解/APP逆向破解)反爬原理和解决方法,不然你的Python会有Bug
JS逆向破解和APP逆向破解以及反爬技术是网络安全和数据保护领域的重要话题。 遵循安全开发的最佳实践,包括输入验证、数据加密、权限管理等,以减少安全漏洞的出现。 坚决维护网络安全及开发安全,杜绝一切被爬,非法爬取数据的行为…...
lua网站开发中如何制作自定义模块
自定义模块是FastWeb框架的重要拓展功能,用来扩展和增强服务的能力。通过自定义模块,开发者可以轻松添加特定的功能和特性,使得网站开发更加灵活和高效。本文将演示如何添加自己的模块作为FastWeb的拓展,为框架的壮大与支持提供重…...
线性规划问题——单纯形算法
第一步:化“约束标准型” 在每个等式约束中至少有一个变量的系数为正,且这个变量只在该约束中出现。在每个约束方程中选择一个这样的变量称为基本变量。 剩下变量称为非基本变量。 一个简单的栗子 上图是一个约束标准型线性规划的例子。 等式1&#x…...
ADS基础教程20 - 电磁仿真(EM)参数化
EM介绍 一、引言二、参数化设置1.参数定义2.参数赋值3.创建EM模型和符号 四、总结 一、引言 参数化EM仿真,是在Layout环境下创建参数,相当于在原理图中声明变量。 二、参数化设置 1.参数定义 1)在Layout视图,菜单栏中选中EM&g…...
NAND flash测试-雷龙发展
文章目录 一、简介 二、速度测试 最近比较忙,也一直没空发什么文章,这算是新年第一篇吧,正好最近收到了一个雷龙的flash芯片,先拿来玩一下吧。 有兴趣的小伙伴可以去雷龙官网找小姐姐领取一个免费试用。 一、简介 大概样子就是上面…...
CMake的学习之路
目录 一、基础命令 二、编译选项和设置 三、文件和目录操作 四、控制流命令 五、其他命令 六、CMake构建级别 CMake是一个跨平台的自动化建构系统,它使用一种人类可读的配置文件(CMakeLists.txt)来控制软件编译过程。以下是CMake中的一些…...
算法体系-22 第二十二节:暴力递归到动态规划(四)
一 最小距离累加和 1.1 描述 给定一个二维数组matrix,一个人必须从左上角出发,最后到达右下角 沿途只可以向下或者向右走,沿途的数字都累加就是距离累加和 返回最小距离累加和 1.2 分析...
Docker:利用Docker搭建一个nginx服务
文章目录 搭建一个nginx服务认识nginx服务Web服务器反向代理服务器高性能特点 安装nginx启动nginx停止nginx查找nginx镜像拉取nginx镜像,启动nginx站点其他方式拉取nginx镜像信息通过 DIGEST 拉取镜像 搭建一个nginx服务 首先先认识一下nginx服务: NGI…...
docker Pulling fs layer 含义
在使用Docker时,当你执行 docker pull 命令来获取一个新的镜像,控制台输出中可能会出现 "Pulling fs layer" 的信息。这是Docker拉取镜像过程中的一个步骤,下面是对这一过程的解释: Docker 镜像是由一系列的层…...
c#中上传超过30mb的文件,接口一直报404,小于30mb的却可以上传成功
在一次前端实现上传视频文件时,超过30mb的文件上传,访问接口一直报404,但是在Swagger中直接访问接口确是正常的,且在后端控制器中添加了限制特性,如下 但是却仍然报404,在apifox中请求接口也是报404, 网上说: 在ASP.NET Core中,配置请求过来的文件上传的大小限制通常…...
VRRP跟踪接口及认证(华为)
#交换设备 VRRP跟踪接口及认证 一、相关概念 1.VRRP跟踪接口 当 VRRP 的 Master 设备的上行接口出现问题, 而 Master 设备一直保持 Active 状态,那么就会导致网络出现中断,所以必须要使得 VRRP 的运行状态和上行接口能够关联。在配置了 VRRP 元余的网…...
梯度提升树GBDT系列算法
Boosting方法的基本元素与基本流程💫 在Boosting集成算法当中,我们逐一建立多个弱评估器(基本是决策树),并且下一个弱评估器的建立方式依赖于上一个弱评估器的评估结果,最终综合多个弱评估器的结果进行输出…...
探索智慧农业系统架构的设计与应用
随着科技的不断进步和农业现代化的推进,智慧农业正逐渐成为农业发展的重要趋势。智慧农业系统架构的设计与应用,将农业生产与信息技术相结合,为农业生产提供了新的思路和解决方案。本文将深入探讨智慧农业系统架构的设计与应用,从…...
【C语言】一篇文章带你深度理解函数
目录 1. 函数的概念 2. 库函数 2.1 标准库和头文件 2.2 库函数的使用方法 2.2.1 举例 sqrt 2.2.2 库函数文档的一般格式 3. 自定义函数 3.1 函数的语法形式 3.2 函数的举例 4. 形参和实参 4.1 实参 4.2 形参 4.3 实参和形参的关系 5. …...
荣耀手机删除系统APP
1、打开开发者模式 设置–系统–关于手机–快速多次点击手机的版本号,即可进入开发者模式。 然后进入开发人员选项,开启USB调试,如下图。 2、数据线连接电脑,检查设备连接情况 按键盘winR键,在弹窗中输入cmd&#…...
vue+elementui+springboot图片上传
1、前端代码 <template><div><el-uploadclass"avatar-uploader"action"http://localhost:8081/ch06/demo/uploadAvatar":show-file-list"false":on-success"handleAvatarSuccess":before-upload"beforeAvatarUpl…...
路由器怎么设置局域网?
局域网(Local Area Network,LAN)是指在一个相对较小的地理范围内,如家庭、办公室或学校等,通过路由器等设备连接起来的计算机网络。设置局域网可以方便地实现内部资源共享和信息交流。本文将介绍如何设置局域网以及一个…...
Linux2(文件类型分类 基本命令2 重定向)
目录 一、文件类型分类 二、基本命令2 1. find 帮助查询 2. stat 查看文件的信息 3. wc 统计文本 4. 查看文本内容 4.1 cat 4.2 more 4.3 less 4.4 head 4.5 tail 5. cal 显示日历 6. date 显示时间 7. du 文件大小 8. ln 链接 软链接 硬链接 区别 9. histo…...
c->c++(一):部分KeyWord
本文主要探讨c相关关键字的使用。 char char默认是unsigned/signed取决平台,wchar_t宽字符:用于Unicode编码(超过一个字节),用wcin和wcout输入输出,字符串为wstring char8_t(20),char16_t(11起),char32_t(11):指定占用字节数且是无符号,字符串类u8string,u16s…...
实战指南:运用快马平台与mcp协议构建企业级智能数据分析系统
今天想和大家分享一个最近用InsCode(快马)平台实现的实战项目——基于MCP协议的企业级智能数据分析系统。这个项目特别适合需要整合多源数据的企业场景,整个过程让我深刻体会到MCP协议在复杂系统中的桥梁作用,以及快马平台如何让这类应用的开发部署变得异…...
SEO和SEM对于中小企业的意义是什么_SEO 和 SEM 的报告指标有哪些
SEO和SEM对于中小企业的意义是什么 在当今的数字化时代,中小企业如何在竞争激烈的市场中脱颖而出,已成为每一个企业家关注的焦点。搜索引擎优化(SEO)和搜索引擎营销(SEM)作为两种重要的数字营销手段&#…...
问道1.6夏日清风单机虚拟机版|200+礼包加持·最强方官1.6完整体验
温馨提示:文末有联系方式【全新封装|问道1.6夏日清风单机虚拟机版】 本版本基于稳定虚拟机环境深度优化,完美集成‘夏日清风’主内容与当前最成熟的‘最强方官1.6’核心框架,运行零冲突、免配置,开箱即玩。【超值&…...
ftools架构深度解析:Stata大数据处理的技术革命
ftools架构深度解析:Stata大数据处理的技术革命 【免费下载链接】ftools Fast Stata commands for large datasets 项目地址: https://gitcode.com/gh_mirrors/ft/ftools 在数据科学和经济学研究的实践中,Stata用户经常面临一个共同的挑战&#x…...
丹青幻境保姆级教程:LoRA卷轴版本管理与热更新机制在生产环境落地
丹青幻境保姆级教程:LoRA卷轴版本管理与热更新机制在生产环境落地 1. 项目背景与核心价值 丹青幻境是一款专为数字艺术创作者设计的AI绘画工具,它巧妙地将现代AI技术与传统东方美学相结合。与传统的技术工具不同,丹青幻境采用了宣纸质感界面…...
3步搞定B站4K视频下载:开源工具bilibili-downloader终极指南
3步搞定B站4K视频下载:开源工具bilibili-downloader终极指南 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 想要免费下载…...
League-Toolkit:3大核心价值的英雄联盟智能辅助工具
League-Toolkit:3大核心价值的英雄联盟智能辅助工具 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League-Toolkit 是一款基于英雄…...
终极Redis可视化工具:Another Redis Desktop Manager完全使用指南
终极Redis可视化工具:Another Redis Desktop Manager完全使用指南 【免费下载链接】AnotherRedisDesktopManager 🚀🚀🚀A faster, better and more stable Redis desktop manager [GUI client], compatible with Linux, Windows, …...
AssetStudio终极指南:快速免费提取Unity游戏模型、纹理与音频资源
AssetStudio终极指南:快速免费提取Unity游戏模型、纹理与音频资源 【免费下载链接】AssetStudio 项目地址: https://gitcode.com/gh_mirrors/asse/AssetStudio AssetStudio是一款功能强大的开源工具,专为Unity游戏资源提取设计,能够轻…...
保姆级教程:用Python复现MIT Cheetah的刚体模型与正运动学(附代码)
从零实现MIT Cheetah四足机器人刚体建模与运动学仿真 四足机器人一直是机器人领域的热门研究方向,而MIT Cheetah作为开源四足机器人中的佼佼者,其设计理念和算法实现值得每一位机器人爱好者深入研究。本文将带你从零开始,用Python完整实现MI…...
