python如何使用opencv的 aruco模块对摄像头中物体进行目标检测尺寸测量?
网友回复
首先确保安装的opencv版本在3.0以上
import cv2 print(cv2.__version__)然后生成ArUco标记:生成了一个大小为200×200像素的ArUco图并保存为aruco.jpg,打印出来放到摄像头面前作为参考

标记检测:通过摄像头检测ArUco标记,并计算像素到实际厘米的比例。
测量其他物体:结合像素到厘米的比例,测量画面中其他物体的宽度和高度。
完整代码
import cv2
import numpy as np
# 生成ArUco字典
aruco_dict = cv2.aruco.getPredefinedDictionary(cv2.aruco.DICT_5X5_100)
# 生成ArUco图
aruco_id = 50
aruco_size = 200 # 每个边的像素数
aruco_img = np.zeros((aruco_size, aruco_size), dtype=np.uint8)
aruco_img = cv2.aruco.generateImageMarker(aruco_dict, aruco_id, aruco_size)
# 保存ArUco图像
cv2.imwrite('aruco.jpg', aruco_img)
# 显示生成的ArUco图
cv2.imshow('ArUco Marker', aruco_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 摄像头实时检测其他物体
def measure_object_with_aruco():
# 定义ArUco标记的真实边长(单位:cm)
aruco_real_size = 5.0 # 假设真实尺寸为5 cm
# 打开摄像头
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
...点击查看剩余70%
如何破解绕开seedance2.0真人照片生成视频 限制?
python有哪些算法可以将视频中的每个帧图片去除指定区域水印合成新的视频?
iphone的激光雷达数据能否实时传输到three三维空间中?
豆包sora等ai视频生成大模型生成的视频水印如何去除?
python如何实现在电脑上拨号打电话给手机?
具身机器人与人形机器人区别?
nodejs如何将一个完整的js代码文件切割成不同的部分混淆后动态加载进入html运行?
为啥windows.onerror捕获js错误是这样的{"message":"Script error.","source":"","lineno":0,"colno":0,"stack":null,
2026年ai将全面接管编程?
WebMCP是干啥的?





