0
点赞
收藏
分享

微信扫一扫

实现LUT

东言肆语 2022-12-25 阅读 151

//实现LUT 查找表




#include "stdafx.h"




#include <iostream>




#include <opencv2/opencv.hpp>




using namespace std;




using namespace cv;









void colorReduce(Mat &image,int div = 64){




Mat lookup(1,256,CV_8U);




for (int i=0;i<256;i++)




lookup.at<uchar>(i) = 256-i;




LUT(image,lookup,image);




}









int _tmain(int argc, _TCHAR* argv[])




{




Mat src = imread("banner2.bmp");




imshow("src",src);




colorReduce(src);




imshow("dst",src);




waitKey();




return 0;




}









效果是很简单的。其实我认为这是提供了一种模块化的解决问题的办法。因为同样的结果,我即使不适用函数也是可以来实现了。




LUT方法用于解决离散的像素装换的问题,提供了最快速的解决方法。很多时候应该优先想到这一点。















//实现LUT 查找表




#include "stdafx.h"




#include <iostream>




#include <opencv2/opencv.hpp>




using namespace std;




using namespace cv;









void colorReduce(Mat &image,int div = 64){




Mat lookup(1,256,CV_8U);




for (int i=0;i<256;i++)




lookup.at<uchar>(i) = 256-i;




LUT(image,lookup,image);




}









int _tmain(int argc, _TCHAR* argv[])




{




Mat src = imread("banner2.bmp");




imshow("src",src);




colorReduce(src);




imshow("dst",src);




waitKey();




return 0;




}









效果是很简单的。其实我认为这是提供了一种模块化的解决问题的办法。因为同样的结果,我即使不适用函数也是可以来实现了。




LUT方法用于解决离散的像素装换的问题,提供了最快速的解决方法。很多时候应该优先想到这一点。

举报

相关推荐

0 条评论