0
我有一個圖像img.jpg,我想用線性gamma校正將它轉換爲newImg.jpg。我發現我如何使用終端做到這一點:在C++中使用gamma校正來轉換jpeg
convert img.jpg -gamma valueOfgamma newImg.jpg
但現在我想這樣做在我的C++程序。我該如何使用imagemagick ++或openCv來做到這一點?
感謝
我有一個圖像img.jpg,我想用線性gamma校正將它轉換爲newImg.jpg。我發現我如何使用終端做到這一點:在C++中使用gamma校正來轉換jpeg
convert img.jpg -gamma valueOfgamma newImg.jpg
但現在我想這樣做在我的C++程序。我該如何使用imagemagick ++或openCv來做到這一點?
感謝
隨着magick++你會使用方法Magick::Image.gamma(const double)
。
#include <Magick++.h>
int main(int argc, const char * argv[]) {
double valueOfgamma = 1.0;
Magick::InitializeMagick(argv[0]);
// convert img.jpg -gamma valueOfgamma newImg.jpg
Magick::Image image("img.jpg");
image.gamma(valueOfgamma);
image.write("newImg.jpg");
return 0;
}
如果您不需要了一些非常便攜,你可以調用'convert'工具從你的C++應用 –
http://www.pyimagesearch.com/2015/10/05/opencv-gamma-更正/非常容易移植到C++ – Miki