【问题标题】:Take a Picture of Persenels with a Digital Camera Attached To Computer使用连接到计算机的数码相机拍摄 Persenels
【发布时间】:2011-03-13 15:26:18
【问题描述】:

我想创建一个可以连接到我电脑上的数码相机的 Win-Form 应用程序。我想在计算机中查看 Persenels 的 LiveView,然后拍摄 Persenels 的照片。

如何实施此操作?

我可以使用什么相机?

我可以使用什么组件或库??

我可以使用哪些 SDK 工具?

请帮帮我...

【问题讨论】:

  • 什么数码相机?它有任何 TWAIN 驱动程序或类似的驱动程序吗?有些摄像头可以通过网络控制,有些则不能。
  • 您说的是网络摄像头还是小型相机?如果它是小型相机,则取决于制造商,您必须使用 DLL 或其他。我认为佳能有一个不错的 DLL 来处理它。
  • Albin Sunnanbo@我可以使用什么型号的相机来控制电线?

标签: c# winforms camera


【解决方案1】:

您可以使用 Windows 图像采集 API 执行此操作。开始使用 Project + Add Reference,Browse 选项卡,导航到 c:\windows\system32\wiaaut.dll。这是一个 COM 组件,您将获得一个互操作库,其中包含 WIA 命名空间中的接口类型。

您要做的第一件事是获取对相机的引用,使用 WIA.ShowSelectDevice()。如果只连接了一个摄像头,它将返回一个 Device 对象,如果有更多,则返回一个对话框让用户选择。像这样:

    public static WIA.Device SelectCamera() {
        var dlg = new WIA.CommonDialog();
        try {
            return dlg.ShowSelectDevice(WIA.WiaDeviceType.CameraDeviceType, false, false);
        }
        catch (System.Runtime.InteropServices.COMException ex) {
            if (ex.ErrorCode == -2145320939) return null;
            throw;
        }
    }

这应该让你开始。查看MSDN page 处的代码 sn-ps,了解您可以使用 API 执行的更多操作。请注意,并非所有相机都允许您在将它们连接到机器时以交互方式使用它们。我的廉价傻瓜相机没有。

【讨论】:

  • 你建议用什么相机来执行这个操作?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-25
  • 1970-01-01
  • 1970-01-01
  • 2016-09-06
相关资源
最近更新 更多