matlab练习程序(图像投影到点云)
最近接触点云比较多,如果把图像投影到点云应该挺有意思。
首先需要载入图像,然后做个球或其他什么形状的点云,这里可以参考球坐标公式。
最后通过pcshow将像素输出到点云上即可。
原图:

投影后的点云:

代码如下:
clear all;
close all;
clc; img = imread('lena.jpg'); [m,n,d]=size(img);
I=reshape(img,[],d); R=;
x=zeros(m*n,);
y=zeros(m*n,);
z=zeros(m*n,);
num = ; %做个球。。。
for j=-pi/:pi/n:pi/-pi/n
for i=:*pi/m:*pi-*pi/m num=num+;
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
matlab练习程序(图像投影到点云)的更多相关文章
- matlab练习程序(点云表面法向量)
		
思路还是很容易想到的: 1.首先使用KD树寻找当前点邻域的N个点,这里取了10个,直接调用了vlfeat. 2.用最小二乘估计当前邻域点组成的平面,得到法向量. 3.根据当前邻域点平均值确定邻域质心, ...
 - matlab练习程序(点云密度)
		
算法思路是首先建立kd树,然后找到每个点距离最近的点的距离,对距离求和再求平均即可. 代码如下: clear all; close all; clc; pc = pcread('rabbit.pcd' ...
 - matlab练习程序(透视投影,把lena贴到billboard上)
		
本练习程序是受到了这个老外博文的启发,感觉挺有意思,就尝试了一下.他用的是opencv,我这里用的是matlab. 过去写过透视投影,当时是用来做倾斜校正的,这次同样用到了透视投影,不过更有意思,是将 ...
 - matlab练习程序(圆柱投影)
		
圆柱投影就是将一张二维的图像投影到三维的圆柱体上,不过在显示图像的时候依然是以二维的形式给出. 投影最重要的步骤就是计算投影变换公式,和图像旋转类似,只要得到变换公式,再依照公式进行代码编写就很容易了 ...
 - matlab练习程序(SUSAN检测)
		
matlab练习程序(SUSAN检测) SUSAN算子既可以检测角点也可以检测边缘,不过角点似乎比不过harris,边缘似乎比不过Canny.不过思想还是有点意思的. 主要思想就是:首先做一个和原图像 ...
 - (转)matlab练习程序(HOG方向梯度直方图)
		
matlab练习程序(HOG方向梯度直方图)http://www.cnblogs.com/tiandsp/archive/2013/05/24/3097503.html HOG(Histogram o ...
 - 微信小程序基于腾讯云对象存储的图片上传
		
在使用腾讯云对象存储之前,公司一直使用的是传统的FTP的上传模式,而随着用户量的不断增加,FTP所暴露出来的问题也越来越多,1.传输效率低,上传速度慢.2.时常有上传其他文件来攻击服务器,安全上得不到 ...
 - 使用matlab批量处理图像后在指定文件夹存储
		
使用matlab批量处理图像后在指定文件夹存储 clear;clc;close all; Files=dir('D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak\*.jp ...
 - 微信小程序集成腾讯云 IM SDK
		
微信小程序集成腾讯云 IM SDK 1.背景 因业务功能需求需要接入IM(即时聊天)功能,一开始想到的是使用 WebSocket 来实现这个功能,然天意捉弄(哈哈)服务器版本太低不支持 wx 协议(也 ...
 
随机推荐
- JavaScript 递归遍历json串获取相关数据
			
递归遍历json串获取相关数据 by:授客 QQ:1033553122 1. 测试数据 // 导航菜单 [ { id: 1, parentId: 0, parentName: null, na ...
 - 【Kafka】《Kafka权威指南》——提交和偏移量
			
KafkaConsumer(消费者)每次调用 poll()方法,它总是返回由生产者写入 Kafka但还没有被消费者读取过的记录, 我们因 此可以追踪到哪些记录是被群组里的哪个消费者读取的.之前已经讨论 ...
 - 导入Jar报错An internal error occurred during: "Building workspace". zip END header not found
			
百度了好久都没有找到答案,后来新建了一个文件夹,再build path就正常了,不知道为什么
 - 池化技术(二)HikariCP是如何管理数据库连接的?
			
基于依赖程序的版本信息:HikariCP:3.3.1 驱动程序mysql-connector-java:8.0.17 上一篇:Druid是如何管理数据库连接的 零.类图和流 ...
 - 《数据挖掘导论》实验课——实验七、数据挖掘之K-means聚类算法
			
实验七.数据挖掘之K-means聚类算法 一.实验目的 1. 理解K-means聚类算法的基本原理 2. 学会用python实现K-means算法 二.实验工具 1. Anaconda 2. skle ...
 - salt-api 获取服务器信息,minion批量执行cmd命令
			
import requests import json try: import cookielib except: import http.cookiejar as cookielib # 使用url ...
 - C语言和其他语言的区别
			
一.嵌入式开发中为什么选择C语言? 首先嵌入式是在已有的硬件基础上,移植操作系统,而现在操作系统的内核都是用C实现的 二.为什么用C语言开发操作系统内核? C语言有三大特点(优点): ①C语言具有出色 ...
 - Git - Git本地仓库与GitHub远程仓库关联
			
前言 Git本地仓库与GitHub仓库的关联逻辑如下 创建Key 在本地仓库下,新建Key文件夹,然后打开Key文件夹,单击鼠标右键,选择Git Bash Here. 输入命令:ssh-keygen ...
 - ASP.NET Core Web 应用程序系列(四)- ASP.NET Core 异步编程之async await
			
PS:异步编程的本质就是新开任务线程来处理. 约定:异步的方法名均以Async结尾. 实际上呢,异步编程就是通过Task.Run()来实现的. 了解线程的人都知道,新开一个线程来处理事务这个很常见,但 ...
 - ASP.NET MVC IOC依赖注入之Autofac系列(二)- WebForm当中应用
			
上一章主要介绍了Autofac在MVC当中的具体应用,本章将继续简单的介绍下Autofac在普通的WebForm当中的使用. PS:目前本人还不知道WebForm页面的构造函数要如何注入,以下在Web ...