How to convert from pixels to mm and from mm to pixels?

조회 수: 45 (최근 30일)
sana3 sal
sana3 sal 2018년 5월 2일
편집: Alfonso 2018년 5월 3일
Hello, I need to convert number of pixels to mm, and the mm to pixels, as in the next figure to compare between the results. the upper image taken from DICOM viewer software, i measure the height manually in mm (11.72mm) i need to convert it to pixels to compare it with the auto calculation shown in the lower image (24 pixel).

답변 (2개)

Alfonso
Alfonso 2018년 5월 3일
편집: Alfonso 2018년 5월 3일
In order to obtain the number of pixels of the yellow line which you know it's real distance is 11.72 mm in the vertebral column image, you could try this
% Draw a line convering the desired distance and get the number of pixels
imshow(my_image)
% Retrieve the intensity values of pixels along the line for 1000 points
[cx,cy, rgbValues, xi,yi] = improfile(1000);
oimg = findobj(gca,'Type','image'); %image which is open
img = get(oimg, 'CData'); % image data
d_line = round(sqrt((xi(1)-xi(2))^2 + (yi(1)-yi(2))^2))
[cx,cy, rgbValues] = improfile(img, xi, yi, d_line);
rgbValues = squeeze(rgbValues); % change dim
% distance in pixels of the line drawn
d_pixels= sqrt( (xi(2)-xi(1)).^2 + (yi(2)-yi(1)).^2);
% plot drawn line
hold on;
plot(xi, yi, 'r-');
For the first image you would finally know the distance in pixels and the real distance (mm) , being able to define the conversion factor: mm/px or px/mm, but only for elements in that specific image.
In order to compare between the pixel distances of each image to see if they match, you should get a scale factor of each image (haven't tried the code right now)
scaleFactor1=d_pixels/image1_rows
And for the second image the same,
scaleFactor2=height_px/image2_rows
Then you could scale one image to the other and finally compare the heights.
S=scaleFactor1/scaleFactor2
height_px_scaled=S*height_px

Walter Roberson
Walter Roberson 2018년 5월 3일

카테고리

Help CenterFile Exchange에서 Convert Image Type에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by