Creating an image using row number, column number, and corresponding Intensity?

4 ビュー (過去 30 日間)
Raju Kumar
Raju Kumar 2022 年 7 月 5 日
コメント済み: Jon 2022 年 7 月 5 日
Hello Matlab experts,
I would like to create an image (pixel size 256x256) from a given data set which has three columns. Column 1 and 2 are basically different combination of row and column numbers (e.g. [r c] = [166 122], [166 123] etc.) and column 3 contains 'Intensity' corrposnding to each row number and column number. How do I create an image from such data given that there are 30000 data sets including repeatations?
Thanks a lot in advance for any leads.
Raju

採用された回答

Jon
Jon 2022 年 7 月 5 日
編集済み: Jon 2022 年 7 月 5 日
Suppose you have your data as you describe in matrix A, then you could use:
B = zeros(256,256); % preallocate array to hold image
idx = sub2ind(size(B),A(:,1),A(:,2)); % get linear, columnwise indices
B(idx) = A(:,3); % assign corresponding intensity values to form image matrix
  2 件のコメント
Raju Kumar
Raju Kumar 2022 年 7 月 5 日
Thanks a lot, Jon. It works.
Jon
Jon 2022 年 7 月 5 日
Glad to hear. In case it is of interest here is a good article to help you learn more about linear indexing https://www.mathworks.com/company/newsletters/articles/matrix-indexing-in-matlab.html

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

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by