Tag: emgucv

在C#中分析GPU使用情况

我正在编写一个使用EMGU的GpuInvoke方法进行GPU加速的C#应用​​程序。 我想分析我的代码,看看GPU上的负载和我正在使用的GPU内存量,但我找不到一个好方法。 看起来它应该很简单,但我无法弄清楚我错过了什么。 谢谢

从Image 到Image 的Emgu图像转换导致强度损失?

我们通过从原始图像中减去图像的拉普拉斯算子来执行图像类型的灰度图像的图像锐化。 结果,如果保存为JPEG,则具有良好定义的边缘和对比度。 但是,如果将结果图像转换为位图OR“ Image ”并保存为JPEG,则强度会降低并且锐化效果会丢失。 我怀疑转换为Bitmap可能会导致此问题。 因此,我保存了一些中间图像,并将图像转换为“ Image ”。 这没有用。 我还尝试使用一种简单的方法来缩放图像。 这也没有帮助。 当我们执行拉普拉斯并从原始图像中减去结果图像时,上述行为也是如此。 插图如下(为简单起见,代码已经过修改): … Image sharpenedImage = Sharpen(filter, originalprocessedImage); ProcessedImage = sharpenedImage.ToBitmap(); // Or ProcessedImage.Bitmap; ProcessedImage.Save(“ProcessedImage.jpg”); // results in intensity loss … public Image Sharpen(Image inputFrame) { ConvolutionKernelF Sharpen1Kernel = new ConvolutionKernelF (new float[,] { { -1,-1,-1 }, { -1, 8,-1 }, { -1,-1,-1 […]

如何使用opencv从字节显示video?

我正在开展一个项目,我们使用无线电调制解调器将数据(video和遥测)从无人驾驶飞行器传输到地面站。 我们需要做的是实时显示video,并能够知道哪个帧对应于C#中的每个遥测数据块。 数据被解封装为遥测和video的字节(mpeg4)。 由于我对OpenCV有一些经验,我想用它来解码,显示和抓取video中的点击位置。 为此,我使用名为Emgu的C#的OpenCV包装器。 问题是OpenCV从设备或文件加载video,我只有一些字节的回调。 我已经尝试将这些字节写入文件并使用OpenCV打开此文件,但是一旦它结束,我需要重新打开它并从它停止的地方继续,这会产生延迟。 任何人都知道如何做到这一点?

可以从int 数组中获取IntPtr吗?

问候。 在C#中:如果我有一个像这样声明的int []数组 int[] array = new array[size]; 有一种方法可以从这个数组中获取IntPtr吗? 问题是我正在使用EmguCV框架,并且有一个构造函数来创建一个图像,它将IntPtr带到像素数据,以便从数组(int [])构建图像。 Image result = new Image(bitmap.Width,bitmap.Height,stride,”**array.toPointer??**”); 顺便说一句,如果有人能告诉我如何计算步幅,这将是伟大的。

C#Emgu:使用DISOpticalFlow

今天是个好日子, 我正在尝试为video构建一个实时帧插值程序。 因为我一直使用C#,所以我选择使用OpenCV和Emgu 3.2.0(最新版本)。 所以,这是它: 首先,我有两个名为frame1和frame2的图像,显​​然是我video中的两帧。 接下来,我将构建我的DISOpticalFlow对象,如下所示 现在我必须用它来获得这两帧之间的平移向量。 所以我构建了一个名为flow的Gray Image,我使用了DISOpticalFlow的calc方法。 Aaaaand ……没什么。 无论我尝试什么,流量总是空的(参见此屏幕: http : //imgur.com/ozN0XgN ) 我错过了什么或做错了什么? 感谢大家阅读,祝你有个美好的一天! 代码: //My items Image frame1 = new Image(1280, 720); Image frame2 = new Image(1280, 720); DISOpticalFlow opticalFlowAlgorithm = new DISOpticalFlow(DISOpticalFlow.Preset.Medium); Image flow= new Image(1280, 720); //Get my frame from my server //Note : this is working […]

EmguCv TypeInitializationException由EmguCv.CV.CvInvoke引发

让我首先说我确实已经遵循了很多教程,例如整个位于EmguCv主站点上的教程,但是抛出了一个TypeInitializationException。 现在,仔细聆听,因为这里出现了非常奇怪的部分。 我首先要说的是我的问题有三个“级别”,然而,所有“级别”中的代码完全相同,即使没有任何变化。 这自然会指出我有一个引用或链接问题,但我再次尝试了不同的教程,但无济于事。 级别1(此级别产生TypeInitializationException) 我创建一个新项目,正确引用所有内容等,然后在这个新项目中编写我的代码。 在调试时,我抛出了exception,我的程序退出。 这是一个问题图片的链接: http : //prntscr.com/uychc 等级2(此等级完全正常,不会抛出任何exception) 在这个级别中,我几乎找到了EmguCv的一个示例项目(在本例中为VideoSurveilance),然后删除默认代码并将我的所有代码复制并粘贴到那里。 添加了我需要的更多参考文献后,程序运行正常。 我不能发布超过3个链接,但你必须相信我,video图片显示正确。 等级3(这个级别不会引发exception,但警告我一个人的“第一次机会”) 在这个级别中,我将整个Level 2项目复制并粘贴到另一个目录中。 找到并重新链接丢失的文件/引用后,我能够运行程序,但图片没有显示,我得到一个“类型的第一次机会exception”System.TypeInitializationException“发生在Emgu.CV.dll警告.http:/ /prntscr.com/uycmn 我目前运行Windows 7 x64(是的,我将构建选项更改为x64和x64 .dll)并运行EmguCv 2.4.9和2.4.2(在两者上测试)和Visual Studios 2010和2012(在两者上测试)。 这是它可能值得的代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; //using System.Threading.Tasks; using System.Windows.Forms; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using […]

如何使用EmguCV模糊部分图像?

我们从汽车中获取了大量用于项目的图像。 为了满足隐私规范,我们需要检测面部和牌照,然后模糊这些区域。 我开始了解Emgucv项目, http: //www.emgu.com/wiki/index.php/License_Plate_Recognition_in_CSharp上的教程对于检测Licensplates非常有用。 有没有办法使用Emgu本身模糊这个区域?

如何检测图像中的黑色子弹?

鉴于以下图像,我如何使用C#,EmguCV或AForge检测此图像中的黑色子弹(90子弹)? 我尝试使用GetPixel(x,y)方法,但它只检查逐个像素,它非常慢,我需要检测项目符号而不是像素。

使用EMGU CV C#中的HOGDescriptor获取图像的HOG描述符

如何使用EMGU CV和C#计算图像的猪描述符向量。 如果我做这样的事情: float[] f; Image img1 = new Image(fullPath); f = hog.Compute(img1, Size.Empty, Size.Empty,null ); 它没有用,它给了一个 你调用的对象是空的。 例外。 我想用默认参数计算hog描述符。 有人知道怎么做吗? Emgu cv的记录非常糟糕。 我修改了代码,现在我收到以下错误:“外部组件抛出exception”代码如下所示 public float[] GetVector(Image im) { HOGDescriptor hog = new HOGDescriptor(); // with defaults values // Image pImage = new Image(; //pImage.ROI = new Rectangle(new Point(0, 0), new Size(64, 128)); Point[] p […]

如何计算EMGU中两幅图像之间的相关性?

我有两个图像(让我们假设它们具有相同的大小),我想用EMGU和C#计算两个图像之间的相关性。 我没有找到任何function,并自己实现了相关计算..但我宁愿使用内置函数。 这样的function存在吗? 谢谢。