- 博客(21)
- 收藏
- 关注
原创 CUDA并行计算基础
CUDA并行计算基础CUDA(Compute Unified Device Architecture)并行计算基础CUDA异构计算CUDA处理流程CUDA线程层次:CUDA支持多种语言和设备CUDA(Compute Unified Device Architecture)并行计算基础(说明:所有图片均来自于网络,仅供学习... )CUDA并行计算模式并行计算是同时应用多个计算资源解决计算一个问题:涉及多个计算资源或处理器 问题被分解为多个离散的部分,可以同时处理(并
2020-06-23 17:00:45
1491
原创 鱼眼相机模型
鱼眼镜头模型详情请参考:https://blog.youkuaiyun.com/u010128736/article/details/52864024一、鱼眼镜头模型鱼眼镜头模型可以近似为单位球面投影模型。(鱼眼镜头主要的是考虑径向畸变,而忽略其余类型的畸变)其成像过程分解成两步:1.三维空间点线性地投影到一个球面上,它是一个虚拟的单位球面,它的球心与相机坐标系的原点重合;2.单位球面上的点投影到图像平面上,这个过程是非线性的。二、投影函数鱼眼镜头会按照一定的投影函数来设计其大致能.
2020-06-19 15:36:50
937
原创 CUDA学习笔记(持续更新——蜗速)
CUDA学习笔记(持续更新——蜗速)1.CUDA 程序实现流程如下2.内存管理3.核函数4.全局数据访问唯一索引5.设备管理附录代码1.CUDA 程序实现流程如下将数据从CPU内存拷贝到GPU内存; 调用核函数对GPU内存中的数据进行处理; 将数据从GPU内存拷贝到CPU内存;2.内存管理 主机和设备内存函数标准C函数 ...
2019-11-13 18:41:26
526
原创 PCL--学习笔记(持续更新——蜗速)
1.PCL头文件引用说明(按需添加)#include <boost/make_shared.hpp> //boost指针相关头文件#include <pcl/point_types.h> //点类型定义头文件#include <pcl/poin...
2019-10-12 11:56:59
1217
原创 ubuntu下安装Open3D
1. 下载Open3D点击跳转到Open3D下载地址使用git 下载Open3Dgit clone git@github.com:intel-isl/Open3D.git进入下载的文件cd Open3D部分子模块是以链接的形式存放在仓库下,因此需要循环克隆git子项目git submodule update --init --recursive2...
2019-09-19 17:54:09
5762
2
原创 ubuntu --重装opencv :opencv4+cuda10+contrib
卸载原有opencv:cd buildsudo make uninstallsudo rm * -rfsudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/sha...
2019-09-11 18:30:04
1044
原创 opencv--笔记——本征矩阵&基础矩阵
本征矩阵E 本征矩阵E :描述相机之间的位姿关系; 定义:矩阵E包含在物理空间中两个摄像机相关的旋转和平移信息;opencv 求本征矩阵函数原型如下:Mat findEssentialMat( InputArray points1, InputArray points2, InputArr...
2019-09-06 12:27:07
1738
原创 随笔——Python & C++ 混用——使用cmake生成c++动态库
Python & C++ 混用,使用cmake 生成c++ 动态库,可供python调用说明:test.cpp为源文件add.h为头文件源文件使用第三方库opencvCMakelists.txt 编写方式如下:#指定cmake最小版本cmake_minimum_required(VERSION 3.5)#将源文件添加到src中set(src test.cpp...
2019-09-03 11:48:28
2260
原创 5 Open3D学习笔记——odometry
里程计:在两个连续的图像对之间找到相机移动在open3d中实现odometry有两种方式: open3d.odometry.RGBDOdometryJacobianFromColorTerm() open3d.odometry.RGBDOdometryJacobianFromHybridTerm() 具体示例代码如下:import open3d as o3d ...
2019-08-14 11:31:59
3148
原创 6 CUDA学习笔记——理解线程,进程,线程束,线程块和网格
线程与进程: 线程是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。而线程是进程中的一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。线程束和线程块: 一个线程束由32个连续的线程组成,在一个线程束中,所有的线程按照单指令多线程(SIMT)方式执行;即,所有线程都执行相同的指令,每个线程...
2019-08-13 13:27:08
3950
2
原创 4 Open3D学习笔记——生成RGBD&pcd
读取color和depth图像,先生成RGBD,然后读取相机参数,生成pcd点云import open3d as o3d import matplotlib.pyplot as plt color = o3d.io.read_image("/home/jhon/Apps/Open3D/examples/TestData/RGBD/color/00000.jpg")depth = o3...
2019-08-12 18:41:43
3745
4
原创 5 CUDA学习笔记——内存申请,拷贝与释放
申请主机端内存 int nx = 1<<14; int ny = 1<<14; int nxy = nx*ny; int nBytes = nxy*sizeof(float); //mlloc host global memory float *h_A, *h_B, *hostRef, *gpuRef; ...
2019-08-12 14:58:23
1500
原创 3 Open3D学习笔记——mesh基础操作
mesh计算法线 拷贝 剪切 着色import copyimport open3d as o3d ... mesh.compute_vertex_normals() o3d.visualization.draw_geometries([mesh]) mesh1 =copy.deepcopy(mesh) #crop mesh1.tria...
2019-08-09 18:01:40
3362
原创 2 Open3D学习笔记——预处理
预处理:降采样,求法线,切割等import open3d as o3ddef down_sample(pcd): downpcd = o3d.geometry.voxel_down_sample(pcd,voxel_size=0.05) return downpcddef estimate_normal(downpcd): o3d.geometry.estim...
2019-08-09 16:43:58
2705
2
原创 1 Open3D学习笔记——读取与显示
数据读取与显示import open3d as o3d def read_pcd(path_file): pcd = o3d.io.read_point_cloud(path_file) o3d.io.write_point_cloud("filename.pcd",pcd) return pcddef read_mesh(path_file):...
2019-08-09 16:17:53
9335
17
原创 4 CUDA 学习笔记 —— 二维索引
通常情况下,矩阵用行优先的方法在全局内存中进行线性存储。对一个二维矩阵,需管理以下三种索引:线程和块索引 矩阵中给定点的坐标 全局线性内存中的偏移量具体操作如下:step1:将线程和块索引映射到矩阵坐标上:ix = threadIdx.x + blockIdx.x * blockDim.xiy = threadIdx.y + blockIdx.y * blockDim....
2019-08-09 11:56:55
1391
原创 3 CUDA 学习笔记—— 性能分析、计时与设备号读取
限制内核性能因素:存储带宽 计算资源 指令和内存延迟应用性能分析工具检测内核性能:nvvp, 独立可视化分析器,显示CPU与GPU上的程序活动的时间表; nvprof, 命令行分析器, 在命令行上收集和显示分析数据,获得CPU与GPU上CUDA关联活动的时间表,包括内核执行、内存传输和CUDA的API调用,以及硬件计数器和CUDA内核的性能指标;nvprof [nvprof_a...
2019-08-08 12:53:44
488
原创 2 CUDA 学习笔记——一维索引与线程检测
线程索引:基于以网格和块的一维信息来计算全局数据访问的唯一索引:int idx = blockIdx.x*blockDim.x+treadIdx.x;定义一个错误处理宏封装所有的CUDA API调用,简化错误检查过程:(\ 不能省去)#define CHECK(call) ...
2019-08-08 11:29:46
442
原创 ippicv——在github上免费下载
github https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20180723/ippicv如需其他版本 自行对应修改链接20180723部分
2019-08-07 17:05:01
2056
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人