Matlab实现点云数据(文本格式)的平行投影

简介: Matlab实现点云数据(文本格式)的平行投影

三维点云数据的处理有时需要借助对应的二维图像,进行平行投影后,虽然会损失诸多信息,但对于没有二维图像的数据来说,不失为一种借鉴,对于如何使信息损失降到最低,欢迎讨论哦~

tic
fid=fopen('face1.txt'); % 打开文件
row=0;
while ~feof(fid) 
    [~]=fgets(fid); 
    row=row+1; 
end
fclose(fid); 
row;
data2=zeros(row,6);
data=load('face1.txt');
x=data(:,1);y=data(:,2);z=data(:,3);r=data(:,4);g=data(:,5);b=data(:,6);
k=1;
for m=1:length(x)
    data2(k,1)=ceil(x(m,1)+0.5);  
    data2(k,2)=ceil(y(m,1)+0.5);
%     data2(k,1)=roundn(x(m,1),-1);  
%     data2(k,2)=roundn(y(m,1),-1);
    data2(k,3)=z(m,1);
    data2(k,4)=r(m,1);
    data2(k,5)=g(m,1);
    data2(k,6)=b(m,1);
    k=k+1;
end
x_stand=unique(data2(:,1));
y_stand=unique(data2(:,2));
sort(x_stand);
sort(y_stand);
data2_2d=zeros(length(x_stand),length(y_stand),3);
for i=1:length(x_stand)
    for j=1:length(y_stand)
        data2_2d(i,j,1)=255;
        data2_2d(i,j,2)=255;
        data2_2d(i,j,3)=255;
    end
end
for i=1:row
    index_x=find(x_stand==data2(i,1));
    index_y=find(y_stand==data2(i,2));
    data2_2d(index_x,index_y,1)=data2(i,4);
    data2_2d(index_x,index_y,2)=data2(i,5);
    data2_2d(index_x,index_y,3)=data2(i,6);
end
figure();
data2_2d=uint8(data2_2d);
imshow(data2_2d,[]);
imwrite(data2_2d,'face1.jpg');
% image(data2_2d);
% subplot(1,2,1); 
% data2_2d=uint8(data2_2d);
% imshow(data2_2d,[]);
% imwrite(data2_2d,'face2.jpg');
% subplot(1,2,2);
% A=imrotate(data2_2d,90,'nearest','crop');
% imshow(A);
% imwrite(A,'rotated face2.jpg');
toc
目录
相关文章
|
27天前
|
传感器 机器学习/深度学习 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
116 1
|
1月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
198 0
|
2月前
|
机器学习/深度学习 Dragonfly 人工智能
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
基于蜻蜓算法优化支持向量机(DA-SVM)的数据多特征分类预测研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 数据采集 传感器
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
|
20天前
|
机器学习/深度学习 算法 安全
【图像处理】使用四树分割和直方图移动的可逆图像数据隐藏(Matlab代码实现)
【图像处理】使用四树分割和直方图移动的可逆图像数据隐藏(Matlab代码实现)
|
1月前
|
传感器 机器学习/深度学习 算法
【室内导航通过视觉惯性数据融合】将用户携带的智能手机收集的惯性数据与手机相机获取的视觉信息进行融合研究(Matlab代码实现)
【室内导航通过视觉惯性数据融合】将用户携带的智能手机收集的惯性数据与手机相机获取的视觉信息进行融合研究(Matlab代码实现)
|
1月前
|
算法 数据挖掘 定位技术
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
基于密度的聚类算法能够在含有噪声的数据集中识别出任意形状和大小的簇(Matlab代码实现)
|
20天前
|
传感器 资源调度 算法
【数据融合】【状态估计】基于KF、UKF、EKF、PF、FKF、DKF卡尔曼滤波KF、无迹卡尔曼滤波UKF、拓展卡尔曼滤波数据融合研究(Matlab代码实现)
【数据融合】【状态估计】基于KF、UKF、EKF、PF、FKF、DKF卡尔曼滤波KF、无迹卡尔曼滤波UKF、拓展卡尔曼滤波数据融合研究(Matlab代码实现)
198 0
|
1月前
|
传感器 算法 机器人
【IMU数据与GPS融合的预积分方法】基于流形的IMU预积分,用于高效的视觉惯性最大后验估计、SE3姿势区分为IMU(Matlab代码实现)
【IMU数据与GPS融合的预积分方法】基于流形的IMU预积分,用于高效的视觉惯性最大后验估计、SE3姿势区分为IMU(Matlab代码实现)
|
2月前
|
机器学习/深度学习 数据采集 运维
基于核密度估计Kernel Density Estimation, KDE的数据生成方法研究(Matlab代码实现)
基于核密度估计Kernel Density Estimation, KDE的数据生成方法研究(Matlab代码实现)

热门文章

最新文章