maximum pixel intensity of image

6 ビュー (過去 30 日間)
Lalit Patil
Lalit Patil 2012 年 10 月 2 日
編集済み: Matt J 2018 年 10 月 10 日
My current project is based on CCD and LASER. i want to calculate maximum intensity of laser strip on ccd.. so please give me a code to find maximum intensity pixel and location of that pixel as row and column..

採用された回答

Image Analyst
Image Analyst 2012 年 10 月 2 日
Try this:
% Generate sample data
imageArray = [ 3 4 5 5 4 4 5 5 3; 5 4 5 5 3 3 3 3 4];
% Find the max value.
maxValue = max(imageArray(:))
% Find all locations where it exists.
[rowsOfMaxes colsOfMaxes] = find(imageArray == maxValue)
That said, this is probably not what you want to do to find the laser spot. You probably want to either do a spatial filter or a threshold, and then binarize and find the centroid of the binary blob. There are some laser tracking programs in the File Exchange: http://www.mathworks.com/matlabcentral/fileexchange/32492-laser-dot-isolation, http://www.mathworks.com/matlabcentral/fileexchange/33666-simple-particle-filter-demo, http://www.mathworks.com/matlabcentral/fileexchange/17960-particle-filter-color-tracker, http://www.mathworks.com/matlabcentral/fileexchange/31463-simple-demo-program-for-color-based-tracking, etc. etc.

その他の回答 (4 件)

Matt J
Matt J 2012 年 10 月 2 日
[maxval,idx]=max(image(:));
[row,col]=ind2sub(size(image), idx);

Lalit Patil
Lalit Patil 2012 年 10 月 2 日
This gives one irritating figure and gives only value of one pixel... The response of this code is same for all figures.. ... and in my image there is more than one pixel that contains same maximum intensity... So, please give modification or anothe code...

Lalit Patil
Lalit Patil 2012 年 10 月 3 日
Thank you Image Analyst... This thing works me... Now I want to generate Image array from image in terms of row and column as you have shown.. I tried imread but it gives M*N*3 array... and i require only M*N array.. So please give code or suggestion..
  5 件のコメント
Image Analyst
Image Analyst 2015 年 10 月 29 日
Try improfile().
Nonu 007
Nonu 007 2015 年 11 月 1 日
Hello Image Analyst. I am trying that too but I am not getting a single line of cross section in 2D at highest Peak. Here i am attaching a fig. May be from that you can help me.
I want a cross section line like this from the image at max intensity.

サインインしてコメントする。


Shel
Shel 2018 年 10 月 10 日
Hi, I am using max(I(:)) on my image but the error "Index exceeds matrix dimensions. " shows up ... do you know what the problem is?
  1 件のコメント
Matt J
Matt J 2018 年 10 月 10 日
編集済み: Matt J 2018 年 10 月 10 日
You've probably created a variable named 'max' previously in your workspace, which Matlab is trying to index.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeImages についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by