所以我有一個名為“masterStruc”的串列,其中包含幾個專案。我還將坐標存盤在此串列中以供以后使用。但是,當我嘗試從串列中檢索坐標時,我得到一個“TypeError:'int' object is not subscriptable”。無論如何我可以從串列中獲取值而不會出現此錯誤?在串列中,我有顏色、來自 approxPolyDP 函式的一些輪廓資料、輪廓區域以及 x 和 y 坐標。
#masterStruc appends the relevant data
masterStruc.append([x, approxCurve, contArea, cX, cY])
for z in range(len(masterStruc)):
#Drawing contours on the source image
cv2.drawContours(srcImg, [masterStruc[z][1]], 0, drawColor[masterStruc[z][0]], 2)
cv2.circle(srcImg, masterStruc[z[3][4]], 5, (255, 255, 255), -1)
任何幫助表示贊賞
uj5u.com熱心網友回復:
感謝您的回復。事實證明我的代碼中有兩個錯誤。首先是我應該將 masterStruc 括在括號中。第二個是我無法使用串列傳遞 x 和 y 坐標,因為在某個索引處有錯誤的型別。相反,我通過將坐標傳遞給變數然后將其用作引數來解決此錯誤。
x = masterStruc[z][3]
y = masterStruc[z][4]
cv2.circle(srcImg, (x, y), 5, (0, 0, 0), -1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/439573.html
下一篇:vscode在加載模塊時遇到問題
