问题标签 [edsdk]

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 投票
1 回答
121 浏览

roi - 如何在 EDSDK 中实现 ROI(感兴趣区域)?

我需要使用 EDSDK 拍照并保存到仅托管图像的 ROI。我需要使用 EdsGetImage 吗?我怎么能意识到这一点?我不明白如何使用 EdsGetImage。

0 投票
1 回答
462 浏览

macos - 佳能 EdSDK 错误 kEdsStateEvent_Shutdown

我有一台佳能 7d,在 OSX 上使用 EdSdk 2.14。如果我打开一个会话并将其放置 4 分钟,我总是会触发关闭事件。这是我的事件回调。为什么总是叫关机?我也尝试调用 kEdsCameraCommand_ExtendShutDownTimer 来延长计时器,但这并没有帮助。其他任何人都会遇到类似的问题。不确定是我的相机还是 SDK 达不到标准。

0 投票
1 回答
847 浏览

c# - 以编程方式禁用AF?

我有一台 EOS 1100D 并使用 edsdk 从我的电脑上用我的相机拍照。
在手动模式下,我应该可以设置所有属性,而在佳能发布的EOS Utility 中,在手动模式下,用户可以在AF和MF之间切换。所以,应该有属性!

我在 EDSDK.cs 中发现的是:

我该如何设置executeMode
事实上,我应该设置 AF 什么,MF 什么?

0 投票
1 回答
1049 浏览

c# - 使用佳能 EDSDK 下载图像最快的方法是什么?

我使用 C# EDSDK 为佳能相机创建了一个相机控制器应用程序。我可以将图像下载到主机 PC,但与佳能 EOS Utility 软件相比仍然需要很多时间。目前我正在大约 2.5 秒内下载 22 兆像素的 Jpg 图像。当我使用佳能软件时,只需不到一秒钟。对于 RAW 图像 (22MPixel),使用 Canons Utility 软件大约需要 2 到 3 秒,使用 SDK 大约需要 11 秒。

我在 EventHandler 中使用以下代码:

有谁知道更快的图像下载程序?还是佳能在他们的软件中使用完全不同的例程?

在此先感谢您的帮助!

0 投票
1 回答
1784 浏览

visual-c++ - 将图像下载到 PC 并更改佳能 EDSDK 中的图像名称

我正在尝试编写一个程序来使用佳能 EOS700D 拍照并更改图像名称,并将该图像保存到某个目录。但我不知道为什么它不起作用!错误是 EDS_ERR_TAKE_PICTURE_CARD_NG。这是我的对象事件处理函数:

和我的公开会议:

和下载图片:

最后是拍照功能:

每件事似乎都是正确的!但它不起作用!:(请帮我...

0 投票
1 回答
218 浏览

edsdk - 将 EDSDK 2.14 与 Rebel T3i 一起使用 - 原始 + JPEG

我上次使用带有 EOS 5D Mark II 相机的 SDK 2.9,一切运行良好。现在我已经更新为使用带有 EOS Rebel T3i 相机的 SDK 2.14。我有3个问题:

1) 我将模式设置为同时返回 RAW 和 JPEG——但这根本不起作用——我的代码挂起/崩溃——如果我只设置为 RAW,那么它就可以工作。Rebel T3i 不支持 RAW + JPEG 吗?

2)我曾经能够设置不同尺寸的RAW图像(RAW1,RAW2)——所以在我的应用程序中,用户可以选择他想要的分辨率。但是现在使用 Rebel T3i,无论模式设置如何,我得到的图像总是 25 MB

3) 我得到的 RAW 图像是每像素 8 位——我以前用 5D Mark II 可以得到 16-bpp——Rebel T3i 有什么办法吗?

0 投票
4 回答
1774 浏览

c++ - 佳能 LiveView:图像转换为 OpenCV Mat

我正在尝试实时显示 LiveView 图像。我在 Windows 下使用 EDSDK 2.14 + Qt5 + opencv+mingw32。我在图像处理方面不是很老练,所以现在我遇到了以下问题。我使用佳能 EDSDK 的示例,直到这部分代码一切正常:

// // Display image //

我搜索了很多示例,但所有示例都是用 C# 或 MFC 或 VB 编写的。我还发现建议使用 libjpegTurbo 解压缩图像,然后使用 opencv 显示它。我尝试使用 libjpegTurbo 但无法理解该怎么做:(。也许这里有人有将 LiveView 流转换为 opencv Mat 或 QImage 的代码示例(因为我使用 Qt)?

0 投票
1 回答
1254 浏览

c++ - 关于 Canon Edsdk 2.14API with C++ 的一些问题

我是使用 EDSDK 2.14 的 C++ 新程序员。我正在使用佳能 EOS 5D Mark II,我有一些问题要做(我正在启动 api、相机会话、处理程序、设置容量、我的程序拍照、为相机设置正确的参数并且我正在使用 Windows处理某些事件的消息):

1)我需要将照片保存在主机中,我这样做是正确的,但是相机只允许内部缓冲区中的 8 张照片,我需要测试一些参数组合(AV、TV 和 ISO SPEED)。当我按下's'(带有Windows消息,回调)时,我循环拍摄10张照片,只拍摄了8张照片,其他有忙错误,所以我猜那是内部缓冲区。我怎样才能拍摄超过 8 张照片,并通过一个 Windows 事件正确更改参数?ps:我尝试重新打开会话(再次关闭并打开与相机的会话)但不是一个好主意,因为传输(下载图像)的事件句柄仅在对象释放时设置。

2)我尝试获取一张照片并下载,但不可能,当我按下's'时,程序等待拍摄8张照片,然后相机将事件回调发送到句柄以下载所有图像。我想按's',程序拍一张照片,下载并拍摄其他照片,如果可能的话,我该怎么做?

3)如果我做一个方法来设置AV,TV,ISO Speed参数,这将被及时发送到相机拍照,或者我需要等待相机回调之类的东西。如果我需要这样的东西,我需要使用什么事件?ps:我的程序都是异步的,我没有使用线程,只有回调和windows事件。

4)我在互联网上搜索要放置正确的焦点,但有人说这只能在实时取景中进行,我不能在我的应用程序中使用它。没有实时取景可以改变焦点吗?ps:因为我的程序需要一张好照片和相机的自动对焦,所以没有像 EOS Utility 那样做相同质量的图像,我在想他们是否对拍摄的图像进行了后处理

如果我有更多问题或者我解决了问题,我将回答所有社区,因为有太多人在使用这个 API,而且它不是太微不足道。对不起我的英语,我不是这门语言的母语,但我正在努力做到最好。

0 投票
0 回答
195 浏览

c# - 在佳能 EOS DSLR 中评估自动模式下的快门速度

我有一台佳能 EOS 1100D/ Rebel T3,并使用佳能 EDSDK,我编写了一个计算机程序来通过我的笔记本电脑控制它。
现在我在白天和各种光线范围内拍照时遇到了一些问题。通常,我将相机设置为手动模式,现在我可以将 ISO 设置为自动模式,但快门速度不能处于动态模式。所以,我面临一个严重的问题。

在自动模式下,相机本身可以测量光线并设置完美的快门速度。
我想使用它并获取其光度计的值来以编程方式设置快门速度。它在 EDSDK 中的属性名称是什么?如何在我的程序中使用它?

谢谢你的帮助。

0 投票
2 回答
660 浏览

c# - 未调用佳能 EDSDK EdsObjectEventHandler

我们有一个正常工作的 C# Windows 窗体应用程序来拍摄外部事件的照片,从通过以太网连接的外部硬件发送。现在它应该由浏览器通过 Web 界面而不是 Forms.WebBrowser 控件使用。

所以我添加了一个最小的网络服务器,在一个线程中运行:

打开“StartWorkAndTakePictures”-Page 启动与之前相同的过程(在旧的 IEBrowserControl 中),显示下一页,初始化相机,启动外部设备,发送事件,相机在正确的时间拍摄. 到这里就跟以前一样了……

但是来自 Canon-SDK 的事件“Camera_SDKProgressCallbackEvent”(EDSDK.ObjectEvent_DirItemRequestTransfer = 0x00000208)未发送(或识别),图片仍在相机上且未下载。

清除它:与主窗口的 WebBrowser-Control 一起使用的同一程序工作正常 - 事件被调用并且图片也被下载。

我认为这是一个消息循环问题,但我不太熟悉 C# 来查找错误。