我正在开发一个屏幕共享应用程序。在这个项目中,我需要通过互联网传输图像。显然,我无法每隔几秒钟就通过互联网发送一张新照片,这将非常慢。我想将服务器屏幕的一个图像发送给客户端,然后再发送新图像,而不是发送仅发送自上一个图像(客户端已具有的图像)以来已更改的像素的新图像。
我写了这段代码:
private List<Color> CompareBitmaps(Image old, Image _new)
{
List<Color> returnList = new List<Color>();
for(int i = 0; i < old.Width; i++)
for (int j = 0; j < old.Height; j++)
{
if (((Bitmap)old).GetPixel(i, j) != ((Bitmap)_new).GetPixel(i, j))
{
returnList.Add(((Bitmap)_new).GetPixel(i, j));
}
}
return returnList;
}
但是,它的工作速度太慢。
我正在寻找一种更快,更复杂的算法。
注意:我不想要一个能做到这一点的内置库。我需要一个算法。
精慕门7919710
蝴蝶不菲
慕田峪7331174
相关分类