gpt4 book ai didi

opencv - 直方图均衡不适用于彩色图像

转载 作者:太空宇宙 更新时间:2023-11-03 21:03:59 27 4
gpt4 key购买 nike

我正在尝试直方图均衡化,但它给我的图像与输入图像相同。

直方图均衡化似乎没有任何影响。谁能告诉我哪里出错了?

private static Mat adjustBrightnessContrast(Mat srcImage){
Mat filterImage = srcImage.clone();
Imgproc.cvtColor(srcImage,filterImage,Imgproc.COLOR_BGR2YCrCb);
java.util.List<Mat> filterImageList = new ArrayList<Mat>(3);
Core.split(filterImage,filterImageList);
Mat luminance = filterImageList.get(0);
Imgproc.equalizeHist(luminance,luminance);
filterImageList.set(0,luminance);
Core.merge(filterImageList,srcImage);
Imgproc.cvtColor(filterImage,srcImage, Imgproc.COLOR_YCrCb2BGR);
return srcImage;
}

我所做的是将图像从 BGA 格式转换为 YCrCb 格式,然后在将图像转换为 list 格式后,对第一个为 0 的 channel 进行直方图均衡。然后是我实现 hist 后得到的 Mat 格式。当量。我用它替换了 list。最后合并列表与sourceImage。

但我得到的输出与输入相同。

我在这张图片上尝试:

enter image description here

PS:我认为我在转换的颜色部分犯了一些错误,因为 GRAYSCALED 图像工作正常。

最佳答案

您正在将 filterImageList 合并到 srcImage 中,但随后使用了 filterImage。尝试用此代码替换,合并到 filterImage:

Core.merge(filterImageList,filterImage);
Imgproc.cvtColor(filterImage,srcImage, Imgproc.COLOR_YCrCb2BGR);

关于opencv - 直方图均衡不适用于彩色图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44836972/

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