问题标签 [image-capture]

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.

0 投票
3 回答
691 浏览

.net - 用于刻录 DVD 的 SDK

我需要将 DVD 写入功能添加到我正在处理的应用程序中。但是,它需要能够写出长时间从相机“实时”抓取的文件。我不能等到所有文件都被捕获后才开始将它们写入 DVD,我需要在进行过程中将它们分块写入。

我看过IMAPI v2,但主要问题似乎是您需要在开始刻录过程之前将其指向您计划写入磁盘的所有文件。我知道它必须有“会话”的概念,这意味着您可以在最终“关闭”它之前分几个部分写入 DVD。

但我想知道是否有任何其他 DVD 写入 SDK 允许您不断地将文件写入 DVD,特别是仅在内存中的文件。如果我不必在将捕获的图像刻录到 DVD 之前将它们写得很硬,那会更有效率。

该解决方案需要在 Windows XP 和 vista 上的 .NET 下工作

0 投票
6 回答
25201 浏览

c# - 如何使用 vb.net 或 asp.net 或 C# 从通过 USB 电缆连接到计算机的数码相机拍照?

我正在使用 vb.net/c# 编写图片编辑 Windows 窗体应用程序。我有一个客户要求从连接到计算机的数码相机拍摄照片。

如何在我的 Windows 应用程序中从 USB 连接的数码相机设备捕获照片?

0 投票
8 回答
23173 浏览

linux - Linux 上的视频捕获?

我们需要在 Linux 上轻松捕获实时视频并显示。我们需要具有简单 API 的廉价卡或 USB 设备。有人想分享一些经验吗?

0 投票
6 回答
58221 浏览

c# - 如何在 .NET 中连接到 USB 网络摄像头?

我想连接到 .NET 中的 USB 网络摄像头,特别是使用 C#。作为 .NET 的新手,我不知道标准库中有什么样的支持。我在网上找到了一个通过剪贴板复制位图的示例,但这看起来很笨拙(而且可能很慢)。有没有更好的办法?

0 投票
6 回答
54258 浏览

java - 从实时视频设备捕获图像以供基于 Java 的应用程序使用的最佳方法是什么?

我正在研究用于对某些场景进行半实时检测的图像处理问题。我的目标是让实时视频以某种方式在我的 Java 代码中以 Motion JPEG 帧的形式出现。

我熟悉Java 媒体框架,遗憾的是,我认为我们可以认为这是一个有效的死 API。我也熟悉Axis 盒子,虽然我真的很喜欢他们的解决方案,但如果我对我的特定兴趣点提出任何批评性反馈,我将不胜感激。

出于本次讨论的目的,这就是我定义“最佳”的方式:

  • 延迟 - 如果我使用此视频流控制相机,我希望尽可能将往返延迟保持在 100 毫秒以下。这是从我的控制输入到我看到可见变化之间的时间来衡量的。稍后编辑:要记住的另一件事是相机控制可能是手动和自动(事件触发器)的组合。即使高质量的提要单独存档,我们也需要立即查看这些图片。
  • 成本免费/开源总比不免费好。
  • 可调整的编解码器参数 - 我需要能够针对某些情况调整编解码器。有时,高速低分辨率流实际上更容易处理。
  • 与 Java 的“集成”——将这个解决方案与我的代码挂钩有多麻烦?我是否通过套接字发送数据包?点击网址?安装 Direct3D / JNI 组合?
  • Windows/Linux/两者?- 我更喜欢与操作系统无关的解决方案,因为我必须提供多种操作系统,但可能有一种解决方案对其中一种而言是最佳的,而对另一种则不是。

注意:我知道其他图像/视频捕获编解码器,这不是这个问题的重点。由于帧精度的损失,我对流 API(例如 MPEG4)特别不感兴趣。但是,如果我的问题有一个解决方案可以提供另一个帧精确的数据流,请加入。

跟进这个问题:在这一点上,我强烈倾向于购买Axis 视频编码器等设备,而不是尝试在软件中或直接在 PC 上捕获视频。但是,如果有人有其他选择,我很乐意听到他们的声音。

0 投票
2 回答
6815 浏览

c# - C# 中的图像捕获

我正在做一个家庭项目,该项目涉及将图像与图像数据库进行比较(使用象限 - 或左右 - 直方图方法)。我想知道我对网络摄像头或其他图像捕获设备的选择是什么:

  • 易于使用 Windows SDK(特别是 DirectShow,我计划与 C# 一起使用)
  • 拥有适用于 64 位和 32 位 Windows Vista(和 Server 2008)的驱动程序

我问的主要是为了避免其他人在使用网络摄像头时可能遇到的陷阱,并查看是否有其他可用的图像捕获设备(或 C# 可用 API)我应该查看。我怀疑任何旧的网络摄像头都可以,但我宁愿安全也不要后悔。

0 投票
4 回答
389 浏览

java - 将图像从 C 程序移动到 Java 并显示在屏幕上的最有效方法是什么?

背景

我正在使用 video4linux 2 规范捕获视频。它是使用 C 程序实时捕获的。我还有一个可以在本地和远程运行的 Java 前端。远程端很简单,我只需将图像压缩为 JPEG,然后通过 mini-http 服务器将它们发送到客户端,客户端将它们解压缩并显示在屏幕上。

当我们在本地运行时,我希望通过某种方式 IPC 直接连接到该内存并从 Java 访问图像。然后,使用尽可能少的 CPU 资源将它们粘贴到屏幕上。这是一个“监视”类型的系统,所以我可以同时运行 8-16 个摄像机源。

问题

将图像数据(YUV420P)从 v4l2 mmap 缓冲区移动到我的 Java 应用程序以在屏幕上显示的最有效方法是什么?如果有可用的,请显示代码或指向一些 api/specs。

回答

考虑到时间,我决定只使用普通的套接字并以 RGB 格式发送数据。当 Java 客户端在同一台机器上运行时,我能够显着提高性能。如果客户端远程运行,我仍然会通过网络发送 JPEG。接下来,我需要找到一个优化的 JPEG 解码器。

顺便说一句,这不是 2 个客户端,只是我的 CameraStream 小部件读取并解析这两种类型。

0 投票
5 回答
1922 浏览

windows - 用于获取屏幕区域更改的 API?

我正在为 Windows 编写一种屏幕录制应用程序,并希望知道屏幕/活动窗口的何时以及哪些区域发生了变化。

是否有我可以挂钩的 Windows API 以获取屏幕更改的通知?

还是我需要手动编写这样的东西?:(

我一直认为远程桌面使用某种 API 来检测屏幕的哪些区域发生了变化,并且只发回那些图像——这正是我需要的行为。

0 投票
1 回答
1435 浏览

c++ - 如何在 Windows Mobile 上捕获高分辨率图像

我想用 Windows Mobile 设备捕捉高分辨率图像。我已经尝试过 WM SDK 中的示例,但它只捕获了单帧摄像机并且分辨率很差。有没有人有使用 C++ 在 Pocket PC 上进行图像捕获的经验?

谢谢

0 投票
2 回答
1531 浏览

linux - Linux:启动窗口、捕获屏幕

我需要编写一个 Red Hat Linux 命令行工具来启动一个窗口并将其外观以 JPEG 格式捕获到磁盘。

通常目标机器没有显卡,但我们可以安装任何软件组件(例如,X)。

一两个问题:

您可能会为此建议哪些库或工具?

如果我使用 GTK+ 之类的东西来创建这个工具,缺少显卡会妨碍它的执行吗?

我看到了scrot,但它似乎不支持在没有用户交互的情况下捕获特定窗口。