之前做了一个铺垫,拿到了一张图片的rgb中最小的值,接下来还会涉及到几行代码,其中有些语法不太懂,但是发现去百度搜索的一些博客说的不太对,还是谨慎一点,不找野路子,再看看官方文档吧。
首先是:
darkc = min(im_min,[],3); %得到暗通道——im_min[][]r,g,b空间中的的最小值, darkc是一个270*480*1的矩阵,代表每个点的3维的最小值
得到rgb矩阵的最小值——三维缩成了一维。还是举个例子吧——所有的人都不喜欢看文字,看例子,一眼明了:
% 创建三维数组:
d1 = [1,2,3;4,5,6;7,8,9;];
d2 = [4,5,6;7,8,9;1,2,3;];
d3 = [7,8,9;1,2,3;4,5,6;];
im_min(:,:,1) = d1;
im_min(:,:,2) = d2;
im_min(:,:,3) = d3;
im_min
im_min = min(im_min,[],3)
运行结果如下:
接下来,第二行代码
[~, idx] = sort(darkc(:),1,'descend');
首先,darkc(:): Use A(:)
, the column representation of