matlab練習程序(圖像投影到點雲)


最近接觸點雲比較多,如果把圖像投影到點雲應該挺有意思。

首先需要載入圖像,然后做個球或其他什么形狀的點雲,這里可以參考球坐標公式。

最后通過pcshow將像素輸出到點雲上即可。

原圖:

投影后的點雲:

 

代碼如下:

clear all;
close all;
clc;

img = imread('lena.jpg');

[m,n,d]=size(img);
I=reshape(img,[],d);   

R=1;
x=zeros(m*n,1);
y=zeros(m*n,1);
z=zeros(m*n,1);
num = 0;

%做個球。。。
for j=-pi/2:pi/n:pi/2-pi/n   
    for i=0:2*pi/m:2*pi-2*pi/m
        
        num=num+1;
        x(num) = R.*cos(j).*cos(i);
        y(num) = R.*sin(j).*cos(i);
        z(num) = R.*sin(i);
        
    end
end

pcshow([x y z],[I I I]);    %如果是彩色圖:pcshow([x y z],I);

本篇是參考matlab中pcshow例子寫的,區別是例子中沒有顯性的寫球坐標公式,其實都差不多,使用全景圖效果應該更好些。

matlab幫助文檔:

https://ww2.mathworks.cn/help/vision/ref/pcshow.html?requestedDomain=cn


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM