问题标签 [aforge]

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 投票
5 回答
13256 浏览

c# - 使用 C# 从 BitmapData 裁剪区域

我有一个位图sourceImage.bmp

锁定它的位:

做分析,得到一个克隆

解锁位:

是否可以指定要复制“dataOriginal”的哪一部分(x,y,w,h)?或从 dataOriginal 创建新数据,指定 X 和 Y 坐标以及 H 和 W?

目的是从该图像中复制一个小区域。这种方法可能比 DrawImage 快,这就是我不使用后者的原因。

编辑:

所以我拿了29 Mb位图并做了一些核心测试!全尺寸裁剪(基本上是副本)+ 100 次迭代。

http://i.minus.com/ibmcUsT1qUGw6f.png

代码:

Edit2: (Aforge full-size Crop..) 方法编号。2

平均 = 62 毫秒(比第一次 Aforge 方法少 40 毫秒)

结果:

  1. 位图克隆 (0 毫秒) ?? (作弊,不是吗?)
  2. Aforge #2(65 毫秒)
  3. Aforge #1(105 毫秒)
  4. 矩形(170 毫秒)
  5. 锁定位(803 毫秒)(等待修复/新测试结果..)
0 投票
7 回答
100008 浏览

c# - 图像序列到视频流?

就像许多人似乎已经拥有(这里有几个关于这个主题的主题)我正在寻找从一系列图像创建视频的方法。

我想用 C# 实现我的功能!

这是我不想做的事情:

我知道有一个名为Splicer ( http://splicer.codeplex.com/ ) 的项目,但我找不到合适的文档或可以遵循的清晰示例(这些是我找到的示例)。

我想做的最接近的,我在 CodePlex 上找到的是: 如何从 C# 中的图像目录创建视频?

我还阅读了一些关于ffmpeg的主题(例如:C# 和 FFmpeg 最好不使用 shell 命令?还有:使用 ffmpeg 转换图像序列),但我发现没有人可以帮助我解决我的问题,我不认为ffmpeg -命令行样式对我来说是最好的解决方案(因为图像数量)。

我相信我可以以某种方式使用 Splicer 项目(?)

就我而言,大约有 > 30 000 张图像,其中每个图像应显示约 200 毫秒(在我要创建的视频流中)。

(视频是关于什么的?植物生长...)

谁能帮我完成我的功能?

0 投票
1 回答
10169 浏览

c# - 白色斑点检测

我正在尝试使用 AForge.NET 来检测图像上的粗白线。

这就像我得到的管道,并且是应用阈值过滤器后我想要的结果。

我知道如何检测形状并且我已经这样做了,但这在任何形状下都不匹配,因为它没有边缘并且不是圆形。

我有检测等边形状的示例代码,但我不知道这是否相关。

这是我要检测的图像:

在此处输入图像描述

如果有人知道如何使用 AForge 或以其他方式使用 C#/.NET 检测到白色斑点,我将不胜感激。

上面的代码只检测边缘,所以它只会检测边缘锐利的形状,这种情况很少发生。

编辑

我有点让它使用以下方法

必须有比使用固定宽度更好的方法(因为它们可能会有很大差异)

0 投票
1 回答
271 浏览

c# - 在 AForge 库中使用 ImageProcessingLog

我有一个来自Aforge图书馆的示例程序。它使用一种日志系统(我假设它就像一个StringBuilder或什么......)。

在示例中,我在这里和那里看到类似的东西:

显然这是某种字符串。稍后我想将所有这些数据转储到TextBox. 我试图这样做,_log.ToString()但它只返回对象名称。

知道如何使用此日志功能吗?

谢谢

0 投票
3 回答
1177 浏览

c# - 为什么来自 AForge.Math 的 DFT 不起作用?

我尝试获取 fft,然后使用以下代码获取波的 dft:

SourceToDouble(s)

ToPowerOfTwo(ref source)

DoubleToComplex(source)

DoPlaySound(sou)

问题是这样的:当我将 wav 文件提供给通用代码时,经过很长时间该方法试图播放最终的 wav(tmp.wav),但它不像通用文件。

更新1:

我也试过FourierTransform.DFT(sou, FourierTransform.Direction.Backward);,但也没有用!

0 投票
1 回答
1760 浏览

c# - 更新 PictureBox 时可能导致 ArgumentException 的原因是什么?

决定尝试使用 AForge处理视频和图像,我尝试实现这个简单的演示

问题是我总是得到一个ArgumentException,尽管并不总是马上发生。它会弹出Application.Run(new Main());,但堆栈跟踪的顶部如下所示:

  • at System.Drawing.Image.get_Width() at System.Drawing.Image.get_Size()
  • at System.Windows.Forms.PictureBox.ImageRectangleFromSizeMode(PictureBoxSizeMode mode)
  • at System.Windows.Forms.PictureBox.OnPaint(PaintEventArgs pe)

不确定这是否相关,但ParamName异常的属性为空。我尝试将图像分配包装在 try...catch 块中,但这没有帮助。我还检查以确保图像在分配之前不为空。我还检查了非空但 0x0 大小的图像。

我做错了什么?任何人都可以提出解决方法吗?

0 投票
1 回答
1401 浏览

c# - Aforge 的网络摄像头框架始终为灰色图像

我正在使用 Aforge .NET 框架在我的应用程序中获取网络摄像头,但我总是得到一个全灰色的图像框架。

通风口处理程序:

这应该可以解决问题。DesiredFrameSize设置为凸轮可以支持的最大值。

任何提示为什么图像总是灰色的?即使写它做磁盘...

编辑:添加:来自Aforge samples的示例应用程序SimplePlayer也会出现同样的问题。我的网络摄像头是罗技 QuickCam Pro 9000。

Edit2:同样适用于 small DesiredFramesizes

0 投票
1 回答
4347 浏览

c# - 使用 AForge 对 Kinect 视频进行 C# 图像处理

我的目标:
使用 Kinect 视频做形状识别(图片上的大矩形),在图片上绘制矩形以突出显示结果。

我使用的技术:

  • C#代码,
  • AForge,更具体地说是它的形状检查器

http://www.aforgenet.com/articles/shape_checker/

魔法应该如何运作:

  1. 每次帧准备好时,我都会将帧数据作为字节数组获取并将其转换为位图以允许我对其进行分析
  2. 应用形状识别算法
  3. 渲染结果...

我的问题:
到目前为止,整个过程都有效,但是当我尝试在 WPF 图像中渲染结果时,它会严重滞后...(每 10 秒 1 帧)...

我的代码:

我可以提供完整的代码(MV C# 2010 项目...)。我很感激任何帮助!

谢谢。

0 投票
1 回答
9620 浏览

c# - 使用 AForge.Video.FFMPEG / AForge.Video.VFW 截屏视频。帧率问题

我的 WinForms .NET 4 C# 应用程序在用户与之交互时记录桌面。

它根据系统的速度使用 AForge FFMPEG 或 VFW 包装器。捕获当然是在后台线程中完成的。

在任何一种情况下,包装器都需要预先指定帧速率。这是有问题的,因为捕获频率是不确定的,并且很容易受到目标机器繁忙程度的影响。在一个好的系统上,我最多可以得到 10 FPS。

所以这里有两个问题:

  • 如何根据实际捕获帧速率对齐帧?
  • 如何提高帧速率,也许通过使用 AForge 以外的解决方案?

为了清楚起见,下面列出了我使用的代码:

0 投票
2 回答
626 浏览

c# - 将图片之间的差异显示为矢量

我想使用一些图形库应用程序在 C# 中编写,它将显示两张图片之间的差异作为矢量地图,这将显示点的移动。

像这样的东西是为 matlab 实现的,称为 PIVlab,例如:

在此处输入图像描述

在此处输入图像描述

由第一个图像表示

在此处输入图像描述

我很乐意使用例如 AForge 在 .NET 中编写类似的东西。你能帮我吗?