.NetCore——OpenCvSharp识别Aruco图

2023-05-16

.NetCore——OpenCvSharp识别Aruco图

一、开始

在之前一章中在C#中引用了OpenCvSharp生成Aruco图(.NetCore——OpenCvSharp创建Aruco图),那么这次就来看看OpenCvSharp识别Aruco图。
直接看代码。
具体的解释看代码注释
在这里插入图片描述

//读取图片
                Mat image = Cv2.ImRead(@"D:\办公\JWT_CoreApi\Aruco\两图左右.jpg");
                //Create标记检测参数
                DetectorParameters parameters = DetectorParameters.Create();

                //定义标记类字典
                /*
                 此处定义的标记类字典要与生成Aruco图时定义的字典相同
                 */
                Dictionary dictionary = CvAruco.GetPredefinedDictionary(PredefinedDictionaryName.Dict4X4_1000);

                /*
                 corners:检测到的标记角向量
                 points:包含那些内部代码没有正确编码的方块的imgpoint。有用用于调试目的。
                 */
                Point2f[][] corners, points;

                //检测到的标记的标识符向量
                int[] ids;

                /*
                 进行图片检测
                 */
                CvAruco.DetectMarkers(image, dictionary, out corners, out ids, parameters, out points);

执行代码后查看 变量 ids 就是识别出来的标识码。
一张图中有多个Aruco码进行识别的时候,我试出了最多有三张图片的时候识别规律。
在这里插入图片描述
看看我的测试图:
在这里插入图片描述

这样就可以用C#实现识别Aruco图了。

环境:
vs2019,
.netcore3.1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NetCore——OpenCvSharp识别Aruco图 的相关文章

随机推荐