属性错误:模块"cv2.aruco"没有属性"Dictionary_get"
即使在安装之后
- opencv-Python
- 开放式控件-Python
import numpy as np
import cv2, PIL
from cv2 import aruco
import matplotlib.pyplot as plt
import matplotlib as mpl
import pandas as pd
vid = cv2.VideoCapture(0)
while (True):
ret, frame = vid.read()
#cv2.imshow('frame', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
aruco_dict = aruco.Dictionary_get(aruco.DICT_6X6_250)
parameters = aruco.DetectorParameters()
corners, ids, rejectedImgPoints = aruco.detectMarkers(gray, aruco_dict, parameters=parameters)
frame_markers = aruco.drawDetectedMarkers(frame.copy(), corners, ids)
plt.figure()
plt.imshow(frame_markers)
for i in range(len(ids)):
c = corners[i][0]
plt.plot([c[:, 0].mean()], [c[:, 1].mean()], "o", label = "id={0}".format(ids[i]))
plt.legend()
plt.show()
vid.release()
# Destroy all the windows
cv2.destroyAllWindows()
查找和标记aruco的正常示例
2条答案
按热度按时间6qqygrtg1#
从新版本安装旧版本的opencv-contrib-python后,它运行良好
https://pypi.org/project/opencv-contrib-python/4.6.0.66/
juud5qan2#
为4.7.x修改了API,我更新了一个小片段。现在你需要示例化ArucoDetector对象。