2011-09-07 16 views

cevap

6

Ne yazık ki OpenCV TIFF dizinlerini desteklemiyor ve yalnızca çok çerçeveli TIFF dosyalarından ilk çerçeveyi okuyabiliyor.

+0

Bu yüzden korktum .. onay için teşekkürler. – so12311

8

OpenCV çok çerçeveli TIFF dosyalarını açamazken, görüntüyü PIL kullanarak açabilir ve ardından verileri OpenCV'ye geçirebilirsiniz. Ben henüz TiffCapture yükledikten pip sonra yeni "cv2" ad

tiff = Image.open('sample.tif') 
try: 
    while 1: 
     # Convert PIL image to OpenCV 
     image = cv.CreateImageHeader(tiff.size, cv.IPL_DEPTH_8U, 1) 
     cv.SetData(image, tiff.tostring()) # It's "tostring" and not "toString()"! 
     # Do whatever you're going to do with OpenCV data 
     tiff.seek(tiff.tell()+1) 
except EOFError: 
    pass 
+1

Bunun için teşekkürler. Başka birinin umurunda olursa, 'cv2''de çalıştım. Dahası, bir '' cv2'' yakalama nesnesinin davranışını öykünen bir sınıf yaptım, çoklu çerçeve TIFF dosyalarını bir film dosyası gibi ele alabilirsiniz. "PseudoCapture" sınıfına bakın: https://github.com/danielballan/mr/blob/master/mr/video/tiff.py –

+0

@Dan Allan İlgileniyorum ama bu link artık bozuldu mu? senaryonu sağlamak lütfen? – JEquihua

+1

Görüntü okuma malzemelerini "pims" olarak adlandırdığım ayrı bir depoya ayırdım. Şu anda bu kuruluş sayfasında yaşıyor: https://github.com/soft-matter/pims –

0

Ayrıca OpenCV yüklemek ve erişim tiff yığınlarının olabilir çalışmayı almanız mümkün olmamıştır. PIL kullanarak tiff'ler için OpenCV'de beklediğiniz tüm VideoCapture yöntemlerini uygular.

İlgili konular