added confidence filter
This commit is contained in:
parent
900a5a9008
commit
ec6330dd1e
@ -156,29 +156,30 @@ while True:
|
||||
output = detector.detect(tagFrame)
|
||||
|
||||
for det in output:
|
||||
# points of the tag to be tracked
|
||||
tag_points = np.array([[det.center[0], det.center[1]], [det.corners[0][0], det.corners[0][1]], [det.corners[1][0], det.corners[1][1]], [det.corners[2][0], det.corners[2][1]], [det.corners[3][0], det.corners[3][1]]], dtype=np.float32)
|
||||
# if the confidence is less than 40% exclude the tag from being processed.
|
||||
if det[4]>40:
|
||||
# points of the tag to be tracked
|
||||
tag_points = np.array([[det.center[0], det.center[1]], [det.corners[0][0], det.corners[0][1]], [det.corners[1][0], det.corners[1][1]], [det.corners[2][0], det.corners[2][1]], [det.corners[3][0], det.corners[3][1]]], dtype=np.float32)
|
||||
|
||||
|
||||
ret,rvecs, tvecs = cv2.solvePnP(objp, tag_points, camera_matrix, dist, flags=0)
|
||||
ret,rvecs, tvecs = cv2.solvePnP(objp, tag_points, camera_matrix, dist, flags=0)
|
||||
|
||||
# making translation and rotation vectors into a format good for networktables
|
||||
tvecDist = tvecs.tolist()
|
||||
rvecDeg = (rvecs*RAD2DEG).tolist()
|
||||
for i in range(0,len(tvecDist)):
|
||||
tvecDist[i] = float(tvecDist[i][0])
|
||||
for i in range(0,len(rvecDeg)):
|
||||
rvecDeg[i] = float(rvecDeg[i][0])
|
||||
# making translation and rotation vectors into a format good for networktables
|
||||
tvecDist = tvecs.tolist()
|
||||
rvecDeg = (rvecs*RAD2DEG).tolist()
|
||||
for i in range(0,len(tvecDist)):
|
||||
tvecDist[i] = float(tvecDist[i][0])
|
||||
for i in range(0,len(rvecDeg)):
|
||||
rvecDeg[i] = float(rvecDeg[i][0])
|
||||
|
||||
totalDist = sqrt((tvecDist[0]**2)+(tvecDist[1]**2)+(tvecDist[2]**2))
|
||||
totalDist = sqrt((tvecDist[0]**2)+(tvecDist[1]**2)+(tvecDist[2]**2))
|
||||
|
||||
# only show display if you use --display for argparse
|
||||
if args.display:
|
||||
imgpts, jac = cv2.projectPoints(axis, rvecs, tvecs, camera_matrix, dist)
|
||||
image = display_features(image, imgpts, totalDist)
|
||||
# only show display if you use --display for argparse
|
||||
if args.display:
|
||||
imgpts, jac = cv2.projectPoints(axis, rvecs, tvecs, camera_matrix, dist)
|
||||
image = display_features(image, imgpts, totalDist)
|
||||
|
||||
data_array.append([det.tag_id, tvecDist, rvecDeg, totalDist])
|
||||
|
||||
data_array.append([det.tag_id, tvecDist, rvecDeg, totalDist])
|
||||
|
||||
for i in range(len(data_array)):
|
||||
orderVal = 0
|
||||
|
Loading…
Reference in New Issue
Block a user