草庐IT

c++ - 有比 JPEG 更快的有损压缩吗?

有没有一种压缩算法比JPEG更快,而且得到了很好的支持?我知道jpeg2000,但据我所知,它并没有那么快。编辑:用于压缩。Edit2:它应该在Linux32位上运行,理想情况下它应该使用C或C++。 最佳答案 Jpeg编码和解码应该极快。您将很难找到更快的算法。如果它很慢,你的问题可能不是格式而是编码器的错误实现。在ffmpeg项目中尝试来自libavcodec的编码器。 关于c++-有比JPEG更快的有损压缩吗?,我们在StackOverflow上找到一个类似的问题:

c++ - 带有 alpha channel 的 OpenCV 2.4 Jpeg 到 PNG

我有一个JPEG和一个mask。我想用三个JPEGchannel创建一个PNG,Alphachannel应该是蒙版。我如何使用OpenCV实现这一目标?问候 最佳答案 std::vectorchannels;cv::split(jpgImage,channels);channels.push_back(mask);cv::MatbgraImage;cv::merge(channels,bgrAImage);splitandmergefunctions的文档 关于c++-带有alphach

c++ - 使用 FFmpeg 将原始 RGB32 文件转换为 JPEG 或 PNG

上下文我使用C++程序将原始字节写入RGB32格式的文件(image.raw):RGBARGBARGBA...我希望能够以某种方式查看它。我有图像的尺寸。我的工具仅限于命令行命令(例如ffmpeg)。我访问了ffmpegwebsite有关说明,但它更多地涉及将视频转换为图像。问题是否可以使用ffmpeg将此文件转换为可查看的文件类型(例如.jpeg、.png)。如果可以,我该怎么做?如果不可行,我可以使用其他命令吗?这仍然不可行,有什么方法可以在C++程序中操作RGB32字节,使其更适合而不使用外部库?我也不想像this那样自己编码.jpeg. 最佳答案

c++ - OpenCV imwrite保存完整的黑色jpeg

我已经为dft做了一些预处理,我正在尝试通过imwrite保存这个图像。我的裁剪图像有这个信息output.type()5output.channels()1output.depth()5但每次我保存它时都会输出黑色。我已经检查了stackoverflow的旧现有线程,但似乎对我来说都不起作用。例如OpenCV2.3imwritesavesblackimage我也试过很多颜色转换和深度转换,但我不知道为什么它不起作用。std::vectorqualityType;qualityType.push_back(CV_IMWRITE_JPEG_QUALITY);qualityType.pus

c++ - 在使用 libjpeg 读取 JPEG 文件时需要帮助

我遵循了libjpeg示例文件中的示例代码,但是我无法读取图像数据。我有以下结构,我创建了这个结构的一个实例。structImageData{unsignedchar*pixels;longwidth;longheight;};ImageData*imageData;下面是我的read_JPEG_file函数:intread_JPEG_file(char*filename){structjpeg_decompress_structcinfo;structmy_error_mgrjerr;/*Morestuff*/FILE*infile;/*sourcefile*/JSAMPARRAYb

c++ - 在 C Linux 中通过套接字发送图像 (JPEG)

我正在编写一个小的C程序,以便能够使用TCP/IP套接字在两台计算机(从服务器到客户端都运行linux)之间传输图像文件,但是当我的图片出现在对方腐败了。我的服务器的代码是这样的:#include#include#include#include#include#include#include#includeusingnamespacestd;intsend_image(intsocket){FILE*picture;intsize,read_size;charsend_buffer[10240],verify;picture=fopen("2.jpg","r");printf("Get

c++ - 将 Mat 压缩成 Jpeg 并将结果存入内存

我知道cv::imwrite函数可以将cv::Mat压缩成Jpeg并将其保存到文件中。但是现在我想把它保存到内存中,就像一个uchar的数组。所以,我可以将数组发送到另一个数组,它可以将数据写入jpeg文件。有没有人可以帮助我? 最佳答案 因为您没有指定编程语言。我将用C++给你答案。std::vectorbuff;//bufferforcodingstd::vectorparam(2);param[0]=cv::IMWRITE_JPEG_QUALITY;param[1]=80;//default(95)0-100cv::imenc

c# - 使用 Jpeg 文件更改桌面墙纸

我正在尝试编写一个简单的程序来更改我的桌面墙纸。我正在使用下载的jpeg文件,我想将其转换为代码。问题是位图需要24位才能显示。我该怎么做呢?提前致谢。publicclassChangeWallpaper{[DllImport("user32.dll",CharSet=CharSet.Auto)]staticexternintSystemParametersInfo(intuAction,intuParam,stringlpvParam,intfuWinIni);publicstaticvoidMain(){Bitmapwallbm=newBitmap("pic.jpg");wallb

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

我需要编写一个应用来播放DICOM多帧图像。每个帧都以JPEG格式存储。所有帧都连续存储在一个文件中。现在,我读出每帧数据并将其传递给以下例程以构建用于显示的位图:BitmapCreateBitmap(byte[]pixelBuffer,intframeSize){Bitmapimage=null;try{longstartTicks=DateTime.Now.Ticks;MemoryStreampixelStream=newMemoryStream(pixelBuffer,0,frameSize);image=newBitmap(pixelStream);loadTime=DateT

windows - 免费的 JPEG2000 库或 SDK 用于解压缩

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我使用专有SDK编写了压缩和解压缩图像文件的代码,以便通过卫星从飞机传输。不幸的是,必须为解压缩和压缩购买许可证。到目前为止,我的应用程序主要在内部使用,因此我可以跟踪许可证和分发情况。现在我需要为外人提供应用程序,我既不能控制分发也不想支付许可证费用。有人知道免费的解压程序、SDK或库吗?我用C++为WindowsNT、2000、XP编程。我的图像文件