How to get image brightness ?
7 次查看(过去 30 天)
显示 更早的评论
Hi everyone! I am new to MATLAB Image Processing and I need your help. I need to build a code that calculates this instantaneous apparent brightness m_inst, related to the straight line in figure. The exposure time of the frame that I have attached here is one second. Can anyone help me?
I have worked on a code like this to obtain the brightness of the pixels belonging to that straight line but I don't know if it is useful for the calculation of apparent brightness:
A=rgb2gray(imread('Img_0685.bmp'));
B=bwareafilt(imbinarize(A-medfilt2(A,[5,5])) ,1) ;
pixelValues=A(B)
figure
imshow(B)
0 个评论
回答(2 个)
yanqi liu
2021-10-14
clc; clear all; close all;
A=rgb2gray(imread('https://ww2.mathworks.cn/matlabcentral/answers/uploaded_files/766496/Img_0685.bmp'));
B=bwareafilt(imbinarize(A-medfilt2(A,[5,5])) ,1) ;
res=mean2(double(A(B)))
figure
imshow(B)
0 个评论
yanqi liu
2021-10-14
clc; clear all; close all;
A=rgb2gray(imread('https://ww2.mathworks.cn/matlabcentral/answers/uploaded_files/766496/Img_0685.bmp'));
B=bwareafilt(imbinarize(A-medfilt2(A,[5,5])) ,1) ;
C=A.*uint8(B);
ci = unique(C(:));
ci_sum = 0;
for i = 1 : length(ci)
if ci(i) > 0
ci_num = length(find(C(:)==ci(i)));
ci_sum = ci_sum + ci_num;
end
end
n = length(find(C(:)>0));
csky = length(find(C(:)==0));
t = 1;
minist = 30 - 2.5*log10((ci_sum-n*csky)/t)
figure
imshow(C)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!