【问题标题】:Calling open cv python code for image display from C visual studio从 C Visual Studio 调用 open cv python 代码进行图像显示
【发布时间】:2018-11-03 15:35:39
【问题描述】:

我正在尝试使用cython 从 C 调用 python 的图像显示代码。

我遵循了从.pyx 创建.c.h 并将它们添加到Visual Studio 中的C 代码中的过程。

我在命令提示符下检查了 python 版本,它是Python 3.6.3 |Anaconda custom (64-bit)。我可以在命令提示符下在那里导入 cv2。

但是当我将这个 .c 和 .h 文件调用到 C 代码中时,我得到了错误

NameError:名称“cv2”未定义
异常被忽略:“read.readImage”
NameError: name 'cv2' is not defined

我已经检查了环境中是否设置了 python 路径。我仍然收到错误消息。

read.pyx 的代码是

import numpy as np
import cv2

cdef public void readImage():
    img = cv2.imread('dog.jpeg')
    print('reading')
    cv2.imshow('image',img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

在visual studio中souce.cpp的代码是

#include "Python.h" 
# include "read.h"

using namespace cv;
int main(void) {
    Py_Initialize();  
    PyInit_read();
    readImage();
    Py_Finalize();   
    return 0;
}

【问题讨论】:

  • 这可能是你的问题,但没有代码就不可能说stackoverflow.com/q/50382755/5769463
  • 比较你的python安装和独立exe中import sys; print(sys.path)的结果。如果它们不同,我不会感到惊讶。你说设置了python路径,取什么值?
  • 非常感谢。这只是 python 路径的问题。现在已经解决了。

标签: python c opencv cython


【解决方案1】:

相同的 python 版本在不同的位置安装了两次。问题是关于 python 路径。

【讨论】:

    猜你喜欢
    • 2020-12-31
    • 1970-01-01
    • 1970-01-01
    • 2019-06-11
    • 1970-01-01
    • 2011-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多