halcon 学习
2024-04-09 19:34:31 0 举报
AI智能生成
自己写着玩呢
作者其他创作
大纲/内容
临时记录
1、自己给个pose,pose_invert得到的是
透视图的pose
透视图的pose
2、自己创建的点云需要三角化
子主题
分支主题 4
1、相机标定
1、创建点云模版
1、通过相机拍照获取点云
2、点云清洗,得到干净的点云
3、将点云通过手动调正
4、匹配点云,得到一个姿态,然后将这个
姿态进行pose_invert,得到零点位置
姿态进行pose_invert,得到零点位置
5、将手动调正后的点云放射到零点姿态
6、保存点云
2、点云匹配
1、获取20组对应的点云图和toolInBasePose坐标
(toolInBasePose坐标是通过工具末端标定得到的)
(toolInBasePose坐标是通过工具末端标定得到的)
2、通过模版对20组点云匹配后得到objectInCamPose
3、标定
1、创建手在眼上标定句柄:create_calib_data
2、读取toolInBasePose,从机器人视野转换为相机视野并
3、读取匹配后的objectInCamPose
4、将读取的20组toolInBasePose、objectInCamPose,进行数据收集
存到句柄中
存到句柄中
5、执行标定calibrate_hand_eye
6、评估标定结果,分数要在1以内
2、无缝引导焊接
1、相机标定
2、点云合并:获取点云,由于不能一次性拍取整个点云,需要多次拍照,进行 点云合并,(将所有的 点云,都调整到objectInBasePose)
1、读取点云及toolInBasse和标定后的toolInCamPose
使用pose_invert(toolInCamPose,camInToolPose)
使用pose_invert(toolInCamPose,camInToolPose)
2、转换toolInCamPose为CuptureToolInBase
通过convert_pose_type(ToolInBasePose1, 'Rp+T', 'gba', 'point', CaptureToolInBasePose)算子转换
通过convert_pose_type(ToolInBasePose1, 'Rp+T', 'gba', 'point', CaptureToolInBasePose)算子转换
3、对点云进行访射,统一转换为CaptureToolInBasePose
rigid_trans_object_model_3d (OM3DScene1, CamInToolPose, AffineTranA1)
rigid_trans_object_model_3d (AffineTranA1, CaptureToolInBasePose,AffineTranA2)
rigid_trans_object_model_3d (OM3DScene1, CamInToolPose, AffineTranA1)
rigid_trans_object_model_3d (AffineTranA1, CaptureToolInBasePose,AffineTranA2)
3、点云调平
1、获取点云,找到一个相对的平面,画一个巨型区域
2、截取巨型区域的3d点云,三点定面,进行光平面拟合
3、判断正反面,进行姿态调整
4、得到光平面姿态
4、点云切片
1、访射点云到光平面姿态
2、手动创建一个切片点姿态,并根据切片点姿态画出切面,
3、使用intersect_plane_object_model_3d算子求出相交线,并判断有没有相交
5、获取轮廓
获取2D的xld轮廓
1、将切片点姿态转换为投影姿态
2、将3D相交线,与camParam,投影姿态转换为2Dxld轮廓
6、轮廓处理
1、轮廓线剪切(给定一个区域进行剪切)
2、共线处理 union_collinear_contours_xld
3、分割轮廓线
4、获取水平线
1、根据角度获取轮廓线
2、线变点,收集起来
3、把收集的点按照坐标进行排序
4、把点转为轮廓线,并进行拟合
5、根据拟合的数据截轮廓线(需要计算)
5、获取垂直线-》同上
6、求两条线的交叉点 intersection_lines
7、获取焊接起始点
8、走点测试
9、集成QT
分支主题
3d
对于老用户
CF推荐
item-based
user-based
对于新用户
基于人口统计信息推荐
对于新加入物品
CB推荐
KNN
SVD
0 条评论
下一页