CN115713649A - 一种全站仪多棱镜场景下目标棱镜的识别方法和系统 - Google Patents
一种全站仪多棱镜场景下目标棱镜的识别方法和系统 Download PDFInfo
- Publication number
- CN115713649A CN115713649A CN202211372086.1A CN202211372086A CN115713649A CN 115713649 A CN115713649 A CN 115713649A CN 202211372086 A CN202211372086 A CN 202211372086A CN 115713649 A CN115713649 A CN 115713649A
- Authority
- CN
- China
- Prior art keywords
- pixel
- data
- prism
- area
- arm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本发明涉及一种全站仪多棱镜场景下目标棱镜的识别方法和系统,其方法包括以下步骤:将CMOS图像数据传输至FPGA;FPGA对CMOS图像数据进行预处理,得到像素区域数据并传输至ARM;ARM对像素区域数据进行扫描与计算,完成目标棱镜的识别。上述方案中,本申请是基于FPGA+ARM的架构,机器人全站仪在远距离测量或者在隧道、地铁建设及监测过程中,当视野中出现两个或多个棱镜时,可以对棱镜进行区分识别,同时可以找到离视野中心最近的棱镜。
Description
技术领域
本发明涉及测绘工程领域,更具体地,涉及一种全站仪多棱镜场景下目标棱镜的识别方法和系统。
背景技术
在全站仪测量过程中,为了测量距离,需要在测试点架设棱镜,利用反射棱镜作为反射物,接收全站发出的光信号,并将其反射回去,计算光信号的相移,从而间接求得光通过的时间,最终测得距离。同时,反射棱镜具有提高回光信号强度,提高角度测量精度等作用。
在使用机器人全站仪进行地铁隧道以及远距离的测量和监测过程中,常常需要同时放置多个棱镜依次进行测量,但由于隧道相对狭窄以及远距离的原因,在视野中出现两个或多个棱镜同时出现的情况不可避免。针对这一问题,常见的解决方法是暂时遮挡住一部分棱镜,或者人工手动瞄准测量,严重影响测量作业效率;若在测量或监测中,甚至未考虑到多棱镜问题,将多个棱镜当作单棱镜测量,将导致测量数据出现严重偏差,导致不可预知的后果。
现有的技术中,中国发明专利公开了AI算法在全站仪棱镜自动识别与跟踪系统及方法,包括数据采集模块、预处理模块、检测模块和跟踪模块,所述数据采集模块与预处理模块连接,所述预处理模块和检测模块连接,所述检测模块和跟踪模块连接,所述检测模块包括ATR主板、全站仪物镜、棱镜,所述ATR主板包括信号调制、AI图像处理单元和图像驱动单元。该发明中,AI识别技术可以在学习更多复杂环境下的棱镜状态包括形状、大小、亮度等等特征,AI抗干扰能力强,实时性高,AI算法中的跟踪功能可以通过设定特征存储量阈值来控制棱镜帧丢失后出现复现达到重识别的功能,将AI检测模块实时给控制端反馈棱镜的位置信息从而使驱动器定位到棱镜完成测量功能;但是该专利只适合针对一个棱镜进行测量作业,无法胜任多个棱镜共同存在的复杂场景。
发明内容
本发明为解决现有的机器人全站仪在远距离测量或者在隧道、地铁建设及监测过程中,当视野中出现两个或多个棱镜时,无法对棱镜进行区分识别,且无法找到离视野中心最近的棱镜的技术缺陷,提供了一种全站仪多棱镜场景下目标棱镜的识别方法和系统。
为实现以上发明目的,采用的技术方案是:
一种全站仪多棱镜场景下目标棱镜的识别方法,包括以下步骤:
将CMOS图像数据传输至FPGA;
FPGA对CMOS图像数据进行预处理,得到像素区域数据并传输至ARM;
ARM对像素区域数据进行扫描与计算,完成目标棱镜的识别。
上述方案中,本申请是基于FPGA+ARM的架构,机器人全站仪在远距离测量或者在隧道、地铁建设及监测过程中,当视野中出现两个或多个棱镜时,可以对棱镜进行区分识别,同时可以找到离视野中心最近的棱镜。
优选的,所述预处理包括灰度的判断、像素区域的划分、像素坐标的处理和中断信号的传输。
优选的,所述灰度的判断具体为:FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点;
上述方案中,门限值可根据实际光斑的亮度进行调整,本申请在设计实现时使用的是250;
像素区域的划分具体为:按照实际需要对CMOS图像进行像素区域划分;
像素坐标的处理具体为:当像素区域的像素点为光斑亮点,将像素点的坐标累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;
中断信号的传输具体为:计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
优选的,CMOS图片像素是960×960,划分的像素区域是20×20,每个像素区域的像素点为2304个。
优选的,在ARM中,首先,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;
其次,需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);
上述方案中,由于仪器结构、轴系等问题,CMOS的中心并不是视野中图像的中心,为保证扫描时总是从视野中心开始扫描,后续总能将光斑移动到视野中心,需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域。
之后,以回字形方式从里向外扫描起始区域(M,N);
上述方案中,扫描中心为视野中心,每一种颜色代表每一个回字形扫描,每一个1代表回字形的扫描起点(可根据实际情况确定),每一个点实际的扫描中心在此基础上作对应的加减;视野中心与CMOS的中心不重合时,空白区域不在进行像素计算,但是为保证算法的通用性,对应输出值为0。
最后,通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到光斑的中心位置。
优选的,所述起始区域(M,N)的计算方式为:
||表示取整。
优选的,目标棱镜的识别方式是:当其边界存在亮点像素时,认为其对应的下一个像素区域与此区域的像素为同一个光斑,将二者对应的像素数据相加,以此方法对同一光斑的像素区域做计算,直到某一像素区域四个边界都没有亮点像素或者四个边界对应的下一个像素区域没有亮点像素数据,则认为一个光斑的像素数据结束,最终通过坐标值除以对应像素亮点个数的方法得到目标棱镜的位置。
一种全站仪多棱镜场景下目标棱镜的识别系统,应用了一种全站仪多棱镜场景下目标棱镜的识别方法,包括数据传输模块、FPGA处理模块和ARM处理模块;所述数据传输模块的输出端与所述FPGA处理模块的输入端电性连接,所述FPGA处理模块的输出端与所述ARM处理模块的输入端电性连接。
优选的,在FPGA处理模块中,FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点,并对做相应的计算;按照实际需要对CMOS图片进行像素区域划分;当像素区域的像素点为光斑亮点,将像素点的坐标X、Y累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
优选的,在ARM处理模块中,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);以回字形方式从里向外扫描起始区域(M,N);通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到目标棱镜的位置。
与现有技术相比,本发明的有益效果是:
本发明提供的一种全站仪多棱镜场景下目标棱镜的识别方法和系统,基于FPGA+ARM的架构,机器人全站仪在远距离测量或者在隧道、地铁建设及监测过程中,当视野中出现两个或多个棱镜时,可以对棱镜进行区分识别,同时可以找到离视野中心最近的棱镜。
附图说明
图1为本发明的方法流程图;
图2为本发明的像素区域划分图;
图3为本发明的像素区域扫描示意图;
图4为本发明的视野中心与CMOS中心不重合时的像素区域扫描示意图;
图5为本发明的模块状态图;
图6为本发明的数据处理示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
以下结合附图和实施例对本发明做进一步的阐述。
实施例1
如图1~图4所示,一种全站仪多棱镜场景下目标棱镜的识别方法,包括以下步骤:
将CMOS图像数据传输至FPGA;
FPGA对CMOS图像数据进行预处理,得到像素区域数据并传输至ARM;
ARM对像素区域数据进行扫描与计算,完成目标棱镜的识别。
上述方案中,本申请是基于FPGA+ARM的架构,机器人全站仪在远距离测量或者在隧道、地铁建设及监测过程中,当视野中出现两个或多个棱镜时,可以对棱镜进行区分识别,同时可以找到离视野中心最近的棱镜。
优选的,所述预处理包括灰度的判断、像素区域的划分、像素坐标的处理和中断信号的传输。
优选的,所述灰度的判断具体为:FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点;
上述方案中,门限值可根据实际光斑的亮度进行调整,本申请在设计实现时使用的是250;
像素区域的划分具体为:按照实际需要对CMOS图像进行像素区域划分;
像素坐标的处理具体为:当像素区域的像素点为光斑亮点,将像素点的坐标累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;
中断信号的传输具体为:计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
优选的,CMOS图片像素是960×960,划分的像素区域是20×20,每个像素区域的像素点为2304个,如图2所示。
优选的,在ARM中,首先,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;
其次,需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);
上述方案中,由于仪器结构、轴系等问题,CMOS的中心并不是视野中图像的中心,为保证扫描时总是从视野中心开始扫描,后续总能将光斑移动到视野中心,需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域。
之后,以回字形方式从里向外扫描起始区域(M,N),如图3所示;
上述方案中,扫描中心为视野中心,每一种颜色代表每一个回字形扫描,每一个1代表回字形的扫描起点(可根据实际情况确定),每一个点实际的扫描中心在此基础上作对应的加减;视野中心与CMOS的中心不重合时,空白区域不在进行像素计算,但是为保证算法的通用性,对应输出值为0,如图4所示。
最后,通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到光斑的中心位置。
优选的,所述起始区域(M,N)的计算方式为:
||表示取整。
优选的,目标棱镜的识别方式是:当其边界存在亮点像素时,认为其对应的下一个像素区域与此区域的像素为同一个光斑,将二者对应的像素数据相加,以此方法对同一光斑的像素区域做计算,直到某一像素区域四个边界都没有亮点像素或者四个边界对应的下一个像素区域没有亮点像素数据,则认为一个光斑的像素数据结束,最终通过坐标值除以对应像素亮点个数的方法得到目标棱镜的位置。
实施例2
如图5和图6所示,一种全站仪多棱镜场景下目标棱镜的识别系统,应用了一种全站仪多棱镜场景下目标棱镜的识别方法,包括数据传输模块、FPGA处理模块和ARM处理模块;所述数据传输模块的输出端与所述FPGA处理模块的输入端电性连接,所述FPGA处理模块的输出端与所述ARM处理模块的输入端电性连接。
优选的,在FPGA处理模块中,FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点,并对做相应的计算;按照实际需要对CMOS图片进行像素区域划分;当像素区域的像素点为光斑亮点,将像素点的坐标X、Y累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
优选的,在ARM处理模块中,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);以回字形方式从里向外扫描起始区域(M,N);通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到目标棱镜的位置。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,包括以下步骤:
将CMOS图像数据传输至FPGA;
FPGA对CMOS图像数据进行预处理,得到像素区域数据并传输至ARM;
ARM对像素区域数据进行扫描与计算,完成目标棱镜的识别。
2.根据权利要求1所述的一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,所述预处理包括灰度的判断、像素区域的划分、像素坐标的处理和中断信号的传输。
3.根据权利要求2所述的一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,所述灰度的判断具体为:FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点;
像素区域的划分具体为:按照实际需要对CMOS图像进行像素区域划分;
像素坐标的处理具体为:当像素区域的像素点为光斑亮点,将像素点的坐标累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;
中断信号的传输具体为:计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
4.根据权利要求2所述的一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,CMOS图片像素是960×960,划分的像素区域是20×20,每个像素区域的像素点为2304个。
5.根据权利要求4所述的一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,在ARM中,首先,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;
其次,需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);
之后,以回字形方式从里向外扫描起始区域(M,N);
最后,通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到光斑的中心位置。
7.根据权利要求5所述的一种全站仪多棱镜场景下目标棱镜的识别方法,其特征在于,目标棱镜的识别方式是:当其边界存在亮点像素时,认为其对应的下一个像素区域与此区域的像素为同一个光斑,将二者对应的像素数据相加,以此方法对同一光斑的像素区域做计算,直到某一像素区域四个边界都没有亮点像素或者四个边界对应的下一个像素区域没有亮点像素数据,则认为一个光斑的像素数据结束,最终通过坐标值除以对应像素亮点个数的方法得到目标棱镜的位置。
8.一种全站仪多棱镜场景下目标棱镜的识别系统,应用了权利要求7所述的一种用于机器人全站仪的多棱镜识别方法,其特征在于,包括数据传输模块、FPGA处理模块和ARM处理模块;所述数据传输模块的输出端与所述FPGA处理模块的输入端电性连接,所述FPGA处理模块的输出端与所述ARM处理模块的输入端电性连接。
9.根据权利要求8所述的一种全站仪多棱镜场景下目标棱镜的识别系统,其特征在于,在FPGA处理模块中,FPGA判断CMOS数据的灰度值,将大于门限值的像素点判定为光斑亮点,并对做相应的计算;按照实际需要对CMOS图片进行像素区域划分;当像素区域的像素点为光斑亮点,将像素点的坐标X、Y累加,同时像素计数值相应加1;同时对每个像素区域的边界进行判断;当区域边界为光斑亮点时,对应输出1,反之输出0;每个区域上下左右边界可用4位的数据表示;计算出每N个像素区域的数据时向ARM端传输一次数据,并利用CMOS的行与行之间的无像素的时间空隙生成一个向ARM传送数据的中断信号,用于传输N个像素区域的数据。
10.根据权利要求9所述的一种全站仪多棱镜场景下目标棱镜的识别系统,其特征在于,在ARM处理模块中,按照接收到的中断信号,依次获取像素区域数据,并按顺序排列,缓存下整张图片的像素区域信息;需要根据传入的视野中心的像素坐标值,计算开始扫描的起始区域,若传入的视野中心坐标为(X,Y),计算起始区域(M,N);以回字形方式从里向外扫描起始区域(M,N);通过回字形扫描到离中心最近一个区域存在亮点像素信息时,以此点为扩散起始点,通过坐标值除以对应像素亮点个数的得到目标棱镜的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211372086.1A CN115713649A (zh) | 2022-11-03 | 2022-11-03 | 一种全站仪多棱镜场景下目标棱镜的识别方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211372086.1A CN115713649A (zh) | 2022-11-03 | 2022-11-03 | 一种全站仪多棱镜场景下目标棱镜的识别方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115713649A true CN115713649A (zh) | 2023-02-24 |
Family
ID=85232229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211372086.1A Pending CN115713649A (zh) | 2022-11-03 | 2022-11-03 | 一种全站仪多棱镜场景下目标棱镜的识别方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115713649A (zh) |
-
2022
- 2022-11-03 CN CN202211372086.1A patent/CN115713649A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109458928B (zh) | 基于扫描振镜和事件相机激光线扫描3d检测方法及系统 | |
EP1008831B1 (en) | Outdoor range finder | |
US7202957B2 (en) | Three-dimensional visual sensor | |
JP2000329852A (ja) | 障害物認識装置 | |
EP0596749B1 (en) | Ophtalmologic apparatus | |
CN109741307B (zh) | 摄像模组的杂光检测方法、杂光检测装置及杂光检测系统 | |
CN112639901B (zh) | 仪表读取装置、仪表读取方法和存储介质 | |
CN101813523B (zh) | 移动信标大气相干长度测量方法 | |
CN105225251A (zh) | 基于机器视觉的超视距海上运动目标快速识别与定位装置及方法 | |
CN112927233A (zh) | 一种船用激光雷达与视频联合目标捕捉方法 | |
CN109685880B (zh) | 一种利用光线追踪计算水面反射和折射效果方法 | |
US6697146B2 (en) | Range finder for finding range by image realization | |
CN111526352B (zh) | 铁路异物防侵三维智能识别机器人设备 | |
CN115713649A (zh) | 一种全站仪多棱镜场景下目标棱镜的识别方法和系统 | |
CN109031333A (zh) | 距离测量方法和装置、存储介质、电子设备 | |
CN112284509A (zh) | 一种基于手机视频的桥梁结构振型测量方法 | |
JPH07333339A (ja) | 自動車用障害物検知装置 | |
CN115407349A (zh) | 一种影像捕捉辅助的多线激光测距模块 | |
CN113050113A (zh) | 一种激光点定位方法和装置 | |
JP3287166B2 (ja) | 距離測定装置 | |
CN111061273B (zh) | 一种无人艇用自主避障融合方法和系统 | |
JPH0843083A (ja) | 先行車検出装置及び接近警報装置 | |
CN112858331A (zh) | 一种vr屏幕的检测方法及检测系统 | |
CN111398986B (zh) | 基于标志帧的帧相关选通三维成像方法及成像系统 | |
CN113189601A (zh) | 混合型深度估算系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |