how can i creat image from data?

4 vues (au cours des 30 derniers jours)
Sanaa
Sanaa le 22 Août 2016
Commenté : Image Analyst le 26 Août 2016
hi I'm beginner in matlab my problem is how to get image.i have text data (row,col) and i want to create image from this data, and this image should be like fringes (dark and white line)
  1 commentaire
KSSV
KSSV le 22 Août 2016
Attach the data here....

Connectez-vous pour commenter.

Réponses (2)

Farouk Moukaddem
Farouk Moukaddem le 26 Août 2016
Hi,
Refer to the following documentation link for the "mat2gray" command that is used to convert a matrix to a grayscale image:
You will also find an example in the above link that will help you get started with Image Processing applications.
Best,
Farouk
  1 commentaire
Sanaa
Sanaa le 26 Août 2016
Hi sir Thanks for replying but I have data not image according to your link I should read the image for my case I didn't have ,I got results and that's results is text file contain four cols (r,theta,phi,intensity) and I should generate image like sphere (like ball) Thanks

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 26 Août 2016
Try this (untested):
% In advance, read your text data into three vectors,
% rows and columns and grayLevels. Then...
lastRow = max(rows);
lastCol = max(columns);
grayImage = zeros(lastRow, lastCol, 'uint8');
for k = 1 : length(rows)
grayImage(rows(k), columns(k)) = grayLevels(k);
end
This assumes that rows and columns are integers.
  4 commentaires
Sanaa
Sanaa le 26 Août 2016
I tried also this code but it isn't work,
clc
clear;
fid = fopen('fort (1).130');
tline = fgets(fid);
out=[];
while ischar(tline)
a=sscanf(tline,' The Time-averaged Poyntine vector(W/m*m) at point: %f');
tline = fgets(fid);
[b c]=sscanf(tline,'%f %f');
tline = fgets(fid);
[d]=sscanf(tline,' Psca %f');
tline = fgets(fid);
out=[out;a b(1) b(2) d];
end
fclose(fid);
% load ('out.mat')
r= out(:,1);
theta= out(:,2);
phi= out(:,3);
I= out(:,4);
theta_new=theta.*180./pi;
for i=1:length(theta_new)
r_a=r(i);
theta_new_a=theta_new(i);
phi_a=phi(i);
x = r(i) .* cos(phi(i)) .* cos(theta_new(i));
y = r(i) .* cos(phi(i)) .* sin(theta_new(i));
% z = r_a .* sin(phi_a);
I(x,y)=I(i);
% x = rcosthetasinphi
% y = rsinthetasinphi
% z = rcosphi.
%
%
end
I=uint8(I);
imshow(I)
Image Analyst
Image Analyst le 26 Août 2016
I think you overlooked the last line of my answer. Here it is again:
And THIS LINK and attach your data file if you want us to try to run your code.
Not really sure why you did not attach your data -- did you just forget, or am I to just assume that you don't want us to run your code with your data?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by