问题标签 [ueye]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - Docker 访问以太网设备
尝试从 Docker 容器访问 uEye 以太网摄像头,我成功地可以通过网络从主机访问它,但容器没有运气。
我正在使用 docker-compose 并将特权设置为 true 如下
Dockerfile 已设置
在容器内运行“/usr/local/share/ueye/bin/ueyesetid”时我收到“没有连接摄像头!”
c++ - C++ 和 OpenCV 处理来自 IDS 相机的图像;转换为垫
我是 C++、OpenCV 和指针概念的新手,所以对于我身边的任何微不足道的错误,我深表歉意。
我正在尝试通过制造商的 SDK(称为 uEye)从 IDS 相机获取图像,并通过 OpenCV 尽可能快地进一步处理它们。我能够分配内存,从相机加载图像并将其保存为文件(所有这些都通过 SDK 功能;我保存图像仅用于调试目的)。但我不想保存它,而是想将它作为 Mat 类型提供给我的 OpenCV 管道。现在我不知道如何进行这种转换。我做了一些谷歌搜索,但找不到提示。
这是我的代码:
我希望从我的 C++ 类中截取的内容不会太混乱。
如果有人提示如何将图像从我的缓冲区转换为 OpenCV Mat 类型,那就太好了。有没有办法在不实际复制内存中的字节以尽可能快的情况下做到这一点?我还想知道的是,将上面的类中的指针作为返回值提供给我的主程序是否存在问题(我刚刚在某处听说返回指针可能会导致问题)?
提前非常感谢!
编辑:感谢 Yunus Temurlenk 的方法,我可以创建垫子。这是我班级中创建 Mat 的方法:
这就是我调用该方法在窗口中显示 Mat 文件的方式:
编辑:现在可以工作了,我为 Mat 添加了 propper 定义。
谢谢!
docker - 如何在 docker 容器中运行服务以使用 gstreamer 从 IDS uEye 摄像头获取信息?
我有一个 docker 容器,它使用 gstreamer 插件来捕获相机的输入。使用 Bastler 相机运行良好,但现在我需要使用 IDS uEye 相机。为了能够使用这台相机,我需要运行 ueyeusbdrc 服务。IDS 文档说要启动它,我可以运行sudo systemctl start ueyeusbdrc
或sudo /etc/init.d/ueyeusbdrc start
. 问题是,当 docker 容器运行时,该服务没有运行并且我得到一个Failed to initialize camera错误,如果我运行gst-launch-1.0 -v idsueyesrc ! videoconvert ! autovideosink
并且 ueyeusbdrc 服务没有在我的 PC 的容器之外运行,我得到的错误是相同的。所以这告诉我问题是 ueyeusbdrc 服务没有在容器内运行。
如何在 docker 容器内运行 ueyeusbdrc?我尝试/etc/init.d/ueyeusbdrc start
在启动应用程序的 .sh 脚本中运行(ENTRYPOINT ["<.sh file>"]
在 Dockerfile 中调用),但它失败了。此外,如果我尝试使用 sudo,它会告诉我该命令不存在。如果我运行 systemctl 它也会告诉我该命令不存在。顺便说一句,我正在运行privileged: true
docker(至少这是 docker-compose.yml 文件中设置的)。
我正在使用 Ubuntu 18.04。
更新:我将 /run/ueyed 和 /var/run/ueyed 映射到容器,并将错误从Failed to initialize camera更改为Failed to initialize video capture。可能是我可以在主机中运行守护程序,并且有一种方法可以将它挂接到容器。关于如何做到这一点的任何建议?
c++ - 使用 Qt 的 Ueye 相机快照为白色
我在 C++ 中编写了一个代码来使用 Ueye 相机拍摄快照,但是保存的图片只是白色的,也就是说有时可以看到一小部分道路但仍然只是白色。我相信这是自动参数的问题,但我觉得好像我已经尝试了一切。
下面是我的代码:
我已经尝试了很多东西,比如下面的参数,但它仍然只是白色的。我把相机放在房间里,它更暗,图像出来还不错,所以我坚决认为这是由于外面的日光造成的。
c++ - 在我的主应用程序中加载一个 dll 怎么会导致 100 个 CPU 负载?
我有一个完美的工作程序,它连接到摄像机(IDS uEye 摄像机)并不断地从中抓取帧并显示它们。
但是,在连接到相机之前加载特定的 dll 时,程序会以 100% 的 CPU 负载运行。如果我在连接到相机后加载 dll ,程序运行良好。
独立于实际使用的相机驱动程序,加载 dll 会以何种方式改变它的性能,占用所有可用 CPU 内核的 100%?使用 Visual Studio 诊断工具时,多余的 CPU 时间归因于“[外部调用] SwitchToThread”而不是 myInnocentDll。
在没有相机初始化的情况下仅加载 dll 不会导致 100% 的 CPU 负载。
我首先想到的是 myInnocentDll.dll 中的一些静态初始化程序配置一些线程行为,但我没有找到任何指向这个方向的东西。我应该在 myInnocentDll.dll 的代码中寻找哪些方面?
python - 通过 python uEye 在 IDS 相机上配置 Mono12 模式
有谁知道如何在 IDS 相机上正确配置 Mono12 模式?
我尝试了 is_SetColorMode 方法,将每像素的 BITES 设置为 12,将每像素的 BYTES 设置为 2,依此类推。它不能那么好。
最后,我在 IDS uEye Cockpit 中完成了一个配置文件,保存了它,现在用于在 python 代码的开头设置相机。它也没有帮助。
我现在遇到的问题是我得到的图像是在两个~2056*2056(芯片大小)的数组中引入的。发生这种情况是因为我每个像素有 2 个字节。但我不知道如何将其正确转换为正常图像。
此外,即使在默认的 Mono8 模式下,我看到的图片也与我在 IDS 应用程序中看到的不同。
这是代码(我也可以给出配置文件):
python - 导入错误:./filename.so:未定义符号:is_InitCamera
我正在尝试使用 SWIG 为 C++ 代码创建一个包装文件,并在树莓派 Linux 平台上的 python 中调用它 C++ 代码在内置函数中包含 uEye IDS 摄像头。我正在使用 QT creator 和 openCV。
要生成包装文件,我使用了源代码:https ://mit-crpg.github.io/OpenMOC/devguide/swig.html ,它适用于普通的 c++ 代码。现在,当我尝试为 IDS 相机生成包装器时,出现错误:导入错误:./filename.so:未定义符号:is_InitCamera。我不确定我应该如何纠正它。
exam.i - 接口文件 -
Exam.h - 头文件 -
考试.cpp - 源文件 -
python - 如何生成 Python ctypes 实例
我正在尝试使用 pyueye 库来运行 ML 相机,并且遇到了 ctypes 的问题。一个函数需要一个类型为“ctypes instance”的参数,尽管尝试了所有可能的变体,但我无法弄清楚如何使用 ctypes 库生成它。这个库没有关于 python 的文档,但我尝试使用的函数的 C 文档是:
我在 python 中收到的代码和后续错误是:
关于 ctypes 实例的任何建议?谢谢
编辑:最小的可重现示例
c++ - 如何手动设置uEye相机的白平衡?
当功能过时时,如何以编程方式设置 uEye USB 摄像头(来自 IDS 制造商)的白平衡以在没有自动白平衡和预定义乘数的情况下工作?
一些背景知识:我使用连接到 Linux 机器的 uEye USB2 摄像头(来自 IDS)。我需要从相机中获取具有预定义颜色的 RGB 图像(原因是在预定义的场景中)。例如,我想将 WB 配置为红色 1.25 乘数、绿色 1.0 和蓝色 2.0 乘数。对于这个任务,我在 Linux 上使用 uEye SDK(头文件)。手册(A:相机基础 > 相机参数)声明该功能已过时,并建议改用功能。禁用自动白平衡很容易(is_SetWhiteBalanceMultipliers()
ueye.h
is_SetWhiteBalanceMultipliers()
is_SetAutoParameter()
is_SetAutoParameter( hCam, IS_SET_ENABLE_AUTO_WHITEBALANCE, 0, 0)
,但我很难找到一种配置红/绿/蓝乘数的方法。该参数仅在启用自动白平衡时起作用,禁用时不执行任何操作IS_SET_AUTO_WB_OFFSET
。我将不胜感激任何建议!IS_SET_AUTO_WB_GAIN_RANGE
matlab - 如何使用 GigE Vision 支持连接 IDS uEye 相机 (ui-5490)?
我有这个给出的 IDS 相机。GigE 接口在相机规格中可用。我还在 Matlab 中添加了“GigE Vision Support from Image Acquisition Toolbox”。但是当我运行gigecamlist
命令时,它找不到任何摄像头。(注:IDS摄像头驱动已安装到电脑上)
实际上我找到了解决方案winvideo
:
使用此命令可以显示相机,我可以预览,但为什么gigecamlist
不向我们显示相机?或者为什么我们不能使用连接gigecam
?