Android设备上的ImageSharp速度极慢

时间:2018-09-27 11:50:19

标签: xamarin xamarin.android .net-core .net-standard imagesharp

我正在构建Xamarin应用程序,并使用 ImageSharp 进行图像处理。

我注意到ImageSharp操作在模拟器中非常慢,而在部署到物理设备(Galaxy Note 8)上时,非常很慢。

进展缓慢的事物:

// Load image (very slow)
var image = SixLabors.ImageSharp.Image.Load(stream);   

// Manipulate image (equally slow)
image.Mutate(i => i.Resize(new ResizeOptions
                    {
                        Mode = ResizeMode.Pad,
                        Position = AnchorPositionMode.Top,
                        Size = new SixLabors.Primitives.Size(600,400))
                    }));

请注意,图像加载正常(尽管速度较慢),并且调整大小的正常工作,但速度非常慢(30-60秒)。

从.NET Core控制台程序中执行相同的代码可将加载和操作时间减少到大约1-2秒。

在附加了调试器的情况下,当运行ImageSharp操作时,我看到了其中的大量信息:

  

GC_MINOR :(托儿所已满)

我不确定如何解决此问题,这是克隆ImageSharp存储库并使用自定义版本进行调试的唯一选择吗?

编辑:不确定是否与this issue有关?

编辑#2:我放弃了ImageSharp,并且对OpenCV进行了无济于事的测试,然后选择了 SkiaSharp ,它开箱即用。 >

0 个答案:

没有答案