[英]Convert bmp to LINEAR jpeg in C++
我有一個image.bmp,我想將其轉換為img.jpg。 但我希望能夠更改jpg圖像的參數,例如伽瑪校正。 如何在C ++中使用opencv或imagemagick做到這一點?
我已經嘗試過使用CImage類,但是當我將圖像從bmp轉換為jpg時,它太小了(從80MB到2MB),並且丟失了很多信息。 所以這就是為什么我希望能夠控制參數。
謝謝
ImageMagick具有稱為Magick ++的 C ++ API。 使用Magick::Image
類進行圖片處理,例如可以通過image.gamma(1.0);
進行伽瑪校正image.gamma(1.0);
方法。 方法image.magick( "JPEG" )
將輸出格式設置為JPEG
。 有關更多詳細信息,請參見Image ++示例。
int main(int argc,char **argv)
{
InitializeMagick(*argv);
Image image( "picture.bmp" );
// Do your transformation on 'image' here
image.magick( "JPEG" )
image.write( "converted.jpg" );
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.