【问题标题】:working with yml files in python and opencv在 python 和 opencv 中使用 yml 文件
【发布时间】:2012-10-21 20:24:39
【问题描述】:

如何在 Python 中加载 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.

【问题讨论】:

  • 我不认为它像OpenCV中生成的yml文件那么简单? FileStorage 类旨在保存到/读取 yml 和 xml 文件,它并不总是有效,但如果你没有看到它,它是有效的:docs.opencv.org/modules/core/doc/xml_yaml_persistence.html
  • 像素中应该包含哪些“信息”而不是“像素值”?

标签: arrays image-processing opencv numpy python-2.7


【解决方案1】:

要加载 yml 文件并与之交互,您首先需要:

import yaml

现在您可以通过执行以下操作将 yaml 文件作为字典读取:

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

现在 yaml 文件的内容可以作为 yml_dict 中的字典提供给您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-17
    • 2021-09-25
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    • 1970-01-01
    • 2016-03-25
    • 2017-03-05
    相关资源
    最近更新 更多