gpt4 book ai didi

opencv - 在 nanoserver Docker 容器中使用 OpenCV 运行 .NET Core 2.0 C# 模块

转载 作者:行者123 更新时间:2023-12-02 16:37:53 27 4
gpt4 key购买 nike

我有一个非常基本的 C# .NET Core 2.0 应用程序,它使用 OpenCV 的几个非常基本的功能作为概念证明。

我试图在 nanoserver 容器中运行它,最终部署为 IoT Edge 模块,但我收到一条错误消息,提示它无法找到 DLL 文件。

Unhandled Exception: System.TypeInitializationException: The type initializer for 'OpenCvSharp.NativeMethods' threw an exception. --->
System.DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

我试过只用 dotnet publish IoTCoreCSharp.csproj 编译和 dotnet publish IoTCoreCSharp.csproj --runtime win10-x64 --configuration Debug --force ,两者都没有运气。

我的 Docker 文件如下所示:
FROM microsoft/dotnet:2.0.0-runtime-nanoserver-1709

ARG EXE_DIR=.

WORKDIR /app

COPY $EXE_DIR/ ./

COPY system32_opencvsharp_deps/ C:/Windows/System32

CMD ["dotnet" "IoTCoreCSharp.dll"]

system32_opencvsharp_deps 包含 avicap32.dll、avifil32.dll、msacm32.dll、msvfw32.dll 和 vcruntime140.dll。 OpenCvSharpExtern.dll 位于我们正在执行的 DLL 文件目录的根目录中。

该程序在 windowsservercore 中运行在我的开发机器上完美安装了 .NET 的基于图像的图像,但是这种图像不能在我们需要的 Windows 10 IoT Core 上运行。

尝试在 IoT Core 上运行时出错:
c:\Program Files\docker\docker.exe: Error response from daemon: container
e9da3baa806f161153fdb7f60a9401a5ff46c32a959499cbe0bd822b1fc0dda3 encountered an error during Start: failure in a
Windows system call: The compute system exited unexpectedly. (0xc0370106).

最佳答案

您可以引用this sample .此示例展示了如何在以 microsoft/dotnet-framework:4.7.1-windowsservercore-1709 作为基础镜像的 Windows 容器中运行 OpenCVSharp。它表明您遇到了同样的问题。

关于opencv - 在 nanoserver Docker 容器中使用 OpenCV 运行 .NET Core 2.0 C# 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49848035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com