gpt4 book ai didi

c# - 在 C# 中解压缩 JPEG 图像的最快方法是什么

转载 作者:可可西里 更新时间:2023-11-01 13:28:53 25 4
gpt4 key购买 nike

我需要编写一个应用来播放 DICOM 多帧图像。每个帧都以 JPEG 格式存储。所有帧都连续存储在一个文件中。现在,我读出每帧数据并将其传递给以下例程以构建用于显示的位图:

    Bitmap CreateBitmap(byte[] pixelBuffer, int frameSize)
{
Bitmap image = null;

try
{
long startTicks = DateTime.Now.Ticks;
MemoryStream pixelStream = new MemoryStream(pixelBuffer, 0, frameSize);
image = new Bitmap(pixelStream);
loadTime = DateTime.Now.Ticks - startTicks;
}
catch (Exception ex)
{
Log.LogException(ex);
}

return image;
}

在测试期间,除了上述例程中的性能不是最佳之外,一切正常。对于 800x600 帧大小,此例程花费的时间为 0 毫秒和 15 毫秒(我不知道为什么)。对于 1024x768 的帧大小,所需时间为 15 毫秒或 31 毫秒。我的目标是将图像数据流式传输并以 60Hz 的频率播放图像(1024x768 版本)而不丢帧。这表明我必须不断地在 15 毫秒内解压缩 JPEG 帧。所以我的问题是这样做的更好方法是什么?

最佳答案

它是 0 毫秒或 15 毫秒,因为您的计时器缺乏分辨率。使用 QueryPerformanceCounter 获取准确的时间。

WPF JPEG 解码器 (System.Windows.Media.Imaging) 比 GDI+ 解码器更快。

关于c# - 在 C# 中解压缩 JPEG 图像的最快方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1765588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com