2012-11-01 17 views
5

में yml फ़ाइलों के साथ काम कर रहा है मैं पाइथन में एक yml फ़ाइल कैसे लोड कर सकता हूं और इसके साथ काम कर सकता हूं?पाइथन और ओपनसीवी

मैं प्रयोग किया है:

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

लेकिन जब मैं डेटा मुद्रित, यह सिर्फ पंक्तियों और स्तंभों आदि

मैं पढ़ना चाहते हैं की संख्या की तरह छवि का विस्तार देता है क्या पिक्सेल में होती है छवि का

मैंने निम्नलिखित कोड का उपयोग करने की कोशिश की, लेकिन यह मुझे केवल पिक्सेल मान देता है जो पिक्सेल में मौजूद जानकारी नहीं है?

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

मुझे नहीं लगता कि यह OpenCV के भीतर उत्पन्न एक yml फ़ाइल के रूप में सरल है? फ़ाइलस्टॉरेज क्लास को yml और xml फ़ाइलों से सहेजने/पढ़ने के लिए डिज़ाइन किया गया है, यह हमेशा काम नहीं करता है लेकिन यह एक काम है यदि आपने इसे देखा नहीं है: http://docs.opencv.org/modules/core/doc /xml_yaml_persistence.html – Chris

+1

पिक्सेल में "पिक्सेल मान" के अलावा "सूचना" क्या है? – misha

+0

में वे तीव्रता रखते हैं –

उत्तर

1

लोड और YML फाइलों के साथ बातचीत के लिए आपको पहले की जरूरत है:

import yaml 

अब आप कुछ इस तरह कर रही द्वारा एक शब्दकोश के रूप में एक YAML फ़ाइल में पढ़ सकते हैं:

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

Yaml फ़ाइल की सामग्री yml_dict के भीतर एक शब्दकोश के रूप में आपके लिए उपलब्ध है।