我有一个winform c#app。
我正在使用Emgu来比较两幅图像之间的运动差异。
我将检测到的更改强制显示在第一张图像上,因此第一张图像现在看起来与第二张图像相同。
我正在覆盖用户控件的onpaint事件来绘制图像。我必须使usercontrol无效以强制执行onpaint事件。
这种效果很好,但内存仍然“尖峰”。有没有办法只对已经改变的像素进行无效 - 比如区域?
这是我目前的代码:
protected override void OnPaint(PaintEventArgs pe)
{
Graphics g = pe.Graphics;
if (CurrentFrame != null)
{
pe.Graphics.DrawImageUnscaled(CurrentFrame, 0, 0);
}
}
CurrentFrame是一个静态位图 感谢