0
我的同事和我是從一個熱成像攝像機採用這種(蟒蛇)導入數據的腳本:cv2.resize究竟做了什麼?
try:
while True:
data = q.get(True, 500)
if data is None:
break
data = cv2.resize(data[:,:], (80, 60))
# f.write(data)
minVal, maxVal, minLoc, maxLoc = cv2.minMaxLoc(data)
# img = raw_to_8bit(data)
np.savetxt("uvc-capture-file.txt",np.array(data))
# f.write(" ")
display_temperature(img, minVal, minLoc, (255, 0, 0))
display_temperature(img, maxVal, maxLoc, (0, 0, 255))
cv2.imshow('Lepton 2.5 Radiometry', img)
cv2.waitKey(1)
cv2.destroyAllWindows()
finally:
libuvc.uvc_stop_streaming(devh)
f.close()
print "done"
finally:
libuvc.uvc_unref_device(dev)
finally:
libuvc.uvc_exit(ctx)
if __name__ == '__main__':
main()
一切正常,但在該行「數據= cv2.resize(數據[:,:],(80 ,60))「我們改變了640,480的大小。我們不確定爲什麼腳本原來是這樣的,但是當我們運行它時,它給了我們一個很好的文本文檔,矩陣中有640x480的數字。當我們將它插入Matlab時,我們仍然能夠運行它。唯一的問題是熱傳感器只收集來自80x60區域的數據。它從哪裏獲得「填充」數字?該腳本與80x60的工作方式相同,但不是給我們提供一個640x480數字矩陣的文本文檔,它給了我們一個80x60的文檔。任何想法爲什麼?
(很抱歉的屠殺python腳本)