У меня проблема с небольшой программой, которую я создаю.
Это моя программа:
#define PY_SSIZE_T_CLEAN
#include
int main() {
Py_SetPythonHome(L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64");
// Py_SetPath(L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/Lib;"
// L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/Lib/site-packages");
Py_Initialize();
PyRun_SimpleString("import sys; print(sys.path)");
PyRun_SimpleString("import numpy; print('numpy loaded successfully')");
PyRun_SimpleString("import cv2; print('cv2 loaded successfully')");
Py_Finalize();
return 0;
}
Я хочу встроить Python в C++, прямо сейчас он у меня запущен. Я могу использовать стандартную библиотеку Python, но когда я пытаюсь импортировать opencv, выдает следующую ошибку:
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\site-packages\cv2\__init__.py", line 181, in
bootstrap()
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\site-packages\cv2\__init__.py", line 153, in bootstra
p
native_module = importlib.import_module("cv2")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\importlib\__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: DLL load failed while importing cv2: The specified module could not be found.
Я установил opencv-python, opencv-contrib-python и opencv-contrib-python-headless в свой общесистемный Python, как я видел на другом подобном форуме, что установка одного из последних двух решила проблему, но у меня это не работает.
Первые две строки Python работают правильно, но происходит сбой, когда я хочу импортировать cv2, я действительно не знаю, что делать
CMakeLists в CLion:
cmake_minimum_required(VERSION 4.0)
project(python_embed_test)
set(CMAKE_CXX_STANDARD 20)
set(Python_EXECUTABLE "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/python.exe" CACHE FILEPATH "" FORCE)
set(Python_LIBRARY "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/libs/python312.lib" CACHE FILEPATH "" FORCE)
set(Python_INCLUDE_DIR "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/include" CACHE PATH "" FORCE)
find_package(Python 3.12 COMPONENTS Development REQUIRED)
add_executable(python_embed_test main.cpp)
target_link_libraries(python_embed_test PRIVATE Python::Python)
Подробнее здесь: https://stackoverflow.com/questions/798 ... on-program
Импорт opencv-python во встроенную программу Python ⇐ C++
Программы на C++. Форум разработчиков
-
Anonymous
1762974882
Anonymous
У меня проблема с небольшой программой, которую я создаю.
Это моя программа:
#define PY_SSIZE_T_CLEAN
#include
int main() {
Py_SetPythonHome(L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64");
// Py_SetPath(L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/Lib;"
// L"C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/Lib/site-packages");
Py_Initialize();
PyRun_SimpleString("import sys; print(sys.path)");
PyRun_SimpleString("import numpy; print('numpy loaded successfully')");
PyRun_SimpleString("import cv2; print('cv2 loaded successfully')");
Py_Finalize();
return 0;
}
Я хочу встроить Python в C++, прямо сейчас он у меня запущен. Я могу использовать стандартную библиотеку Python, но когда я пытаюсь импортировать opencv, выдает следующую ошибку:
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\site-packages\cv2\__init__.py", line 181, in
bootstrap()
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\site-packages\cv2\__init__.py", line 153, in bootstra
p
native_module = importlib.import_module("cv2")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\fxct\AppData\Local\Python\pythoncore-3.12-64\Lib\importlib\__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ImportError: DLL load failed while importing cv2: The specified module could not be found.
Я установил opencv-python, opencv-contrib-python и opencv-contrib-python-headless в свой общесистемный Python, как я видел на другом подобном форуме, что установка одного из последних двух решила проблему, но у меня это не работает.
Первые две строки Python работают правильно, но происходит сбой, когда я хочу импортировать cv2, я действительно не знаю, что делать
CMakeLists в CLion:
cmake_minimum_required(VERSION 4.0)
project(python_embed_test)
set(CMAKE_CXX_STANDARD 20)
set(Python_EXECUTABLE "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/python.exe" CACHE FILEPATH "" FORCE)
set(Python_LIBRARY "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/libs/python312.lib" CACHE FILEPATH "" FORCE)
set(Python_INCLUDE_DIR "C:/Users/fxct/AppData/Local/Python/pythoncore-3.12-64/include" CACHE PATH "" FORCE)
find_package(Python 3.12 COMPONENTS Development REQUIRED)
add_executable(python_embed_test main.cpp)
target_link_libraries(python_embed_test PRIVATE Python::Python)
Подробнее здесь: [url]https://stackoverflow.com/questions/79817316/importing-opencv-python-in-an-embeded-python-program[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия