Python 如何在多维数组中打印/返回值?
嗨,我一直在使用opencv 3.0.0和python 2.7.x开发opencv pythonPython 如何在多维数组中打印/返回值?,python,arrays,opencv,Python,Arrays,Opencv,嗨,我一直在使用opencv 3.0.0和python 2.7.x开发opencv python import numpy as np import cv2 img = cv2.imread('C:\\Users\\J\\Desktop\\image.jpg') gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) corners = cv2.goodFeaturesToTrack(gray,25,0.01,10) print corners 这是对我的
import numpy as np
import cv2
img = cv2.imread('C:\\Users\\J\\Desktop\\image.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
corners = cv2.goodFeaturesToTrack(gray,25,0.01,10)
print corners
这是对我的回报
[[[ 335. 263.]]
[[ 306. 254.]]
[[ 337. 253.]]
[[ 349. 262.]]
[[ 507. 361.]]
[[ 300. 264.]]
[[ 420. 250.]]
[[ 362. 252.]]
[[ 375. 261.]]
[[ 322. 254.]]
[[ 409. 260.]]
[[ 545. 294.]]
[[ 505. 398.]]
[[ 388. 252.]]
[[ 493. 315.]]
[[ 578. 376.]]
[[ 480. 376.]]
[[ 510. 375.]]
[[ 396. 261.]]
[[ 493. 376.]]
[[ 532. 376.]]
[[ 575. 357.]]
[[ 540. 360.]]
[[ 514. 307.]]
[[ 401. 251.]]]
我知道这是一个多维数组,如何以(x,y)的形式打印数组中的值?我认为这有一个简单的答案,但我使用python已经有相当长的时间了。提前谢谢
拐角。重塑(-1,2)
?或者更具体地说,list(map(tuple,corners.reforme(-1,2))
您能为给定的数据提供预期的输出吗?那会有帮助的。我只想把它打印成(36252),(375261),(322254)。。。等等或者我最好将这些值分别指定为x1,y1,x2,y2…这样您勾选的答案就可以了?角点。重塑(-1,2)
?或者更具体地说,list(map(tuple,corners.reforme(-1,2))
您能为给定的数据提供预期的输出吗?那会有帮助的。我只想把它打印成(36252),(375261),(322254)。。。等等或者对我来说,把这些值分别赋值为x1,y1,x2,y2…这样你勾选的答案就行了?我能问你np.int0到底是做什么的吗?我看了好几次,但不能完全理解它。@JimmySuh它将浮点值
值转换为整数
值int0
与int32
或int64
分别适用于32位
和64位
系统。我能问一下np.int0的具体功能吗?我看了好几次,但不能完全理解它。@JimmySuh它将浮点值
值转换为整数
值<对于32位
和64位
系统,code>int0分别与int32
或int64
相同。
import numpy as np
import cv2
img = cv2.imread('C:\\Users\\J\\Desktop\\image.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
corners = cv2.goodFeaturesToTrack(gray,25,0.01,10)
corners = np.int0(corners)
for corner in corners:
x,y = corner.ravel()
print(x,y)