glfw显示点云

一个简单的glfw显示点云的例程

OpenGL遇到的问题

显示问题

  1. OpenGL画点,为什么点的坐标值超出[-1,1]范围就显示不了???

  2. 如何使用GLSL

  3. 其他显示问题

学习OpenGL基本知识

OpenGL基本知识

LearnOpenGL-CN

算法性能时间记录

本机计算机硬件参数

处理器:Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz 2.59 GHz

显卡:NVIDIA GeForce RTX 2060

机带RAM:16.0 GB

操作系统:window 64 位操作系统, 基于 x64 的处理器

测试内容:

一、从硬盘加载点云数据

二、CUDA-ICP算法表现

从官网学习GLFW

从官网学习GLFW

glfw相关知识以及与cuda之间的互操作

OpenGL与CUDA互操作

一、Eigen的坑

参考

  1. YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES

错误原因:两个向量表达式类型不兼容(相同的固定大小或动态大小)

二、Eigen的使用

不同大小之间的Vector赋值

cuda code error

thrust

[thrust::system::system_error]

1
2
3
4
5
6
7
cudaMalloc((void**)&nanFlags_dev, N*sizeof(int));
getNANpts << <fullBlocksPerGrid, blockSize >> >(N, z_dev, nanFlags_dev);
cudaDeviceSynchronize();
thrust::device_ptr<int> thrust_nanflags(nanFlags_dev);
//int num_of_nan = thrust::reduce(thrust_nanflags, thrust_nanflags + N, (int)0, thrust::plus <int >()); //统计有多少个NAN点
int num_of_nan = thrust::count(thrust_nanflags, thrust_nanflags + N, 1); //统计有多少个NAN点
cudaDeviceSynchronize();

出现错误:

原因:核函数getNANpts写错了。只对nanFlags_dev中的一个位置进行初始化,其他位置没有赋值,所以进行计算时会错误。

CUDA知识片段

  1. 线程模型适合用于OpenMP。进程模型适用于MPI

    在GPU环境下:CUDA使用一个线程块(block)构成网格(grid)。这可以看成是一个进程(即线程块)组成的队列(即网格),而进程之间没有通信。每一个线程块内部有很多线程以批处理的方式运行,称为线程束(warp)

GIT教程2

GIT2—笔记补充

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
快速创建分支:
git branch test
切换分支:
git checkout test
删除分支:
git branch -d test

修改了很多文件时候,需要commit,通过添加-a来避免每个都commit
git commit -a -m "Changed some files"
查看远端:
git remote -v
移除远端关联:
1 git remote rm origin // 移除本地关联
2 git remote add origin git@github.com/example.git // 添加线上仓库
3 git push -u origin master // 注意:更改后,第一次上传需要指定 origin
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×