2012-11-01 14 views
5

Python'da bir yml dosyasını nasıl yükleyebilir ve onunla çalışabilirim?python ve opencv içinde yml dosyaları ile çalışma

kullandığım:

import cv 
data = cv.Load("Z:/data/xyz_00000_300.yml") 

Ama verileri yazdırırken, sadece pikselde ne var satır ve sütun vb okumak istiyorum

sayısı gibi görüntünün detayını verir görüntünün

Aşağıdaki kodu kullanmayı denedim, ancak pikselde bulunan bilgileri değil yalnızca piksel değerlerini veriyor?

def AccessPixels(img): 
    for y in range(0, img.height): 
     for x in range(0, img.width): 
      cv.Get2D(img, y, x) # Slow get pixel value. 
      cv.Set2D(img, y, x, (0, 0, 0, 0)) # Slow set pixel value. 
+0

Bu OpenCV içinde oluşturulan bir yml dosyası kadar basit olduğunu sanmıyorum? FileStorage sınıfı, yml ve xml dosyalarına kaydetmek/okumak için tasarlanmıştır, her zaman işe yaramaz, ancak bunu görmüyorsanız işe yarar: http://docs.opencv.org/modules/core/doc /xml_yaml_persistence.html – Chris

+1

Piksellerde "piksel değerleri" dışında ne "bilgi" bulunması gerekiyor? – misha

+0

yoğunluğu içeriyorlar –

cevap

1

yüklemek ve yml dosyaları ile etkileşime geçmek için ilk gerekir:

import yaml 

Şimdi böyle bir şey yaparak bir sözlük olarak bir yaml dosyasında okuyabilirsiniz:

with codecs.open('your.yml', 'r', encoding='utf8') as f: 
    yml_dict = yaml.safe_load(f) 

Şimdi yaml dosyasının içeriği yml_dict içinde bir sözlük olarak kullanılabilir.