<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[vcpro126的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/vcpro126</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; vcpro126]]></copyright><item><title><![CDATA[sizeof ptr]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/108759618</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/108759618</guid><author>vcpro126</author><pubDate>Wed, 23 Sep 2020 19:23:11 +0800</pubDate><description><![CDATA[struct LocalParam {
  LocalParam(size_t s) : size_(s) {}
  size_t size_;
};

template &lt;class T&gt;
size_t size(const T&amp;) {
  return sizeof(T);
}

template &lt;&gt;
size_t size(const LocalParam&amp; l) {
  return l.size_;
}
template &lt;class T&gt;
.]]></description><category></category></item><item><title><![CDATA[宏定义 do while(false)]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/108724390</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/108724390</guid><author>vcpro126</author><pubDate>Tue, 22 Sep 2020 09:43:28 +0800</pubDate><description><![CDATA[#define _STL_VERIFY(cond, mesg)         \
 do               \
  {              \
  if (cond)         ...]]></description><category></category></item><item><title><![CDATA[LU分解  Ax=b, A=LU]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/106201639</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/106201639</guid><author>vcpro126</author><pubDate>Mon, 18 May 2020 22:32:59 +0800</pubDate><description><![CDATA[LU分解

详细算法：https://zhuanlan.zhihu.com/p/84210687

示例：https://www.geeksforgeeks.org/l-u-decomposition-system-linear-equations/

LU分解的实现可用用SVD分解。

问题描述: 解方程Ax=b, A可以分解成 LU，L是下三角矩阵，U是上三角矩阵。

LU分解的意义：减少计算量，便于程序化。

Ax=LUx=b,令y=Ux，则Ly=b,先求出y,再根据y=Ux求出x.

通过高斯消元.]]></description><category></category></item><item><title><![CDATA[vcpkg VS2017的全局集成]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/106039992</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/106039992</guid><author>vcpro126</author><pubDate>Sun, 10 May 2020 18:43:12 +0800</pubDate><description><![CDATA[vcpkg是微软的开源工具包，可以很方便的下载第三方库并集成到Visual Studio环境。

步骤

1.下载vcpkg
 git clone https://github.com/microsoft/vcpkg
2.编译
 运行bootstrap-vcpkg.bat 生成vcpkg.exe
3.查看Vcpkg支持的开源库列表
  vcpkg.exe search
4.安装第三方库
 vcpkg.exe install gtest:x64-windows
 .\vc...]]></description><category></category></item><item><title><![CDATA[C++17 - The Best Features]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105602930</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105602930</guid><author>vcpro126</author><pubDate>Sat, 18 Apr 2020 18:28:26 +0800</pubDate><description><![CDATA[youtube: C++17 - The Best Features - Nicolai Josuttis [ACCU 2018]

笔记：

在头文件中定义静态变量 inline static

class TrackNew{

private:

 inline static int numMalloc=0;
}

C++17 compile-TIme if


template&lt;ty...]]></description><category></category></item><item><title><![CDATA[异构计算笔记]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105601617</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105601617</guid><author>vcpro126</author><pubDate>Sat, 18 Apr 2020 18:09:36 +0800</pubDate><description><![CDATA[异构计算

视频：

Heterogeneous Programming in C++ today - Michael Wong [ACCU 2018]

笔记：

异构计算技术

OpenCL,CUDA, C++ AMP, OpenMP, OpenACC , SYCL,

Directive vs Explicit Parallelism

  指示性并行：OpenMP,OpenACC

...]]></description><category></category></item><item><title><![CDATA[变换矩阵推导 v=M1*v1=M1*(T21*v2)=M2*v2=>M2=M1*T21]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105597938</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105597938</guid><author>vcpro126</author><pubDate>Sat, 18 Apr 2020 14:18:57 +0800</pubDate><description><![CDATA[世界坐标系中的点v在 view1中的坐标为v1,在view2中的坐标为v2，

view1变换矩阵为M1(相对于单位坐标系I), view2的变换矩阵M2

view2相对view1的变换矩阵T21.

v=M1*v1=M2*v2

v1=T21*v2

v=M1*v1=M1*T21*v2=M2*v2

M2=M1*T21

理解:view2先做T21变换，点坐标系回到M1,再乘以M1,回到标准坐...]]></description><category></category></item><item><title><![CDATA[VS2017 C++  filesystem]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105461924</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105461924</guid><author>vcpro126</author><pubDate>Sat, 11 Apr 2020 23:25:53 +0800</pubDate><description><![CDATA[VS2017 C++ 还没有正式支持filesystem，命名空间是std::experimental::filesystem。

一些常用的方法：


#include &lt;iostream&gt;
#include &lt;filesystem&gt;
#include &lt;fstream&gt;
#include &lt;string&gt;
using namespace std;...]]></description><category></category></item><item><title><![CDATA[c++ unique_ptr]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105457467</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105457467</guid><author>vcpro126</author><pubDate>Sat, 11 Apr 2020 18:42:13 +0800</pubDate><description><![CDATA[#define _CRT_SECURE_NO_WARNINGS

#include &lt;iostream&gt;
#include &lt;memory&gt;
#include &lt;functional&gt;
#include &lt;cstdio&gt;

using namespace std;
class A {
 public:
  A(int a, int b) { cou...]]></description><category></category></item><item><title><![CDATA[C++ 如何正确高效地定义字符串常量]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105434879</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105434879</guid><author>vcpro126</author><pubDate>Fri, 10 Apr 2020 16:23:35 +0800</pubDate><description><![CDATA[阅读gtest.cc 代码发现 字符串常量都定义成数组的形式，为什么不定义成指针呢？


// A test filter that matches everything.
static const char kUniversalFilter[] = "*";

// The default output file for XML output.
static const char kDefaul...]]></description><category></category></item><item><title><![CDATA[C++ initializer_list 高性能的stl 局部常量数组。]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/105129064</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/105129064</guid><author>vcpro126</author><pubDate>Thu, 26 Mar 2020 22:39:24 +0800</pubDate><description><![CDATA[C++11引入了一个新的类模板initializer_list。

它本质就是C 的局部常量数组的封装，避免了使用因为动态数组或vector而产生的在堆上分配、释放内存的额外开销，同时提供begin(),end(),size()的接口可以配合STL的容器和算法,这样可以减少代码量，如：方便地设计出支持变长数组的函数。

initializer_list的成员都是const的，语法上不支持修改，减...]]></description><category></category></item><item><title><![CDATA[优秀资料网站]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104583126</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104583126</guid><author>vcpro126</author><pubDate>Sat, 29 Feb 2020 22:00:42 +0800</pubDate><description><![CDATA[机器学习，最大熵模型学习https://shuwoom.com/?p=1168
]]></description><category></category></item><item><title><![CDATA[PCL点云滤波去噪]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104578389</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104578389</guid><author>vcpro126</author><pubDate>Sat, 29 Feb 2020 17:46:46 +0800</pubDate><description><![CDATA[为什么要对点云滤波？
一般下面这几种情况需要进行点云滤波处理：
（1） &nbsp;点云数据密度不规则需要平滑
（2） 因为遮挡等问题造成离群点需要去除
（3） 大量数据需要下采样
（4） 噪...]]></description><category></category></item><item><title><![CDATA[有序点云]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104577922</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104577922</guid><author>vcpro126</author><pubDate>Sat, 29 Feb 2020 17:28:05 +0800</pubDate><description><![CDATA[有序点云是什么

一帧扫描数据是一副深度图，属于灰度图。像素的灰度值代表的是深度信息，可以通过相机参数把每个像素点变换到世界坐标系，这样每个像素就对应一个三维点，有些点是无效的，一般用(0, 0, 0)来代替。下图是一个典型的深度点云。假设深度图的分辨率是ResX * ResY...]]></description><category></category></item><item><title><![CDATA[SIFT算法原理]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104486654</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104486654</guid><author>vcpro126</author><pubDate>Mon, 24 Feb 2020 21:58:51 +0800</pubDate><description><![CDATA[SIFT算法
SIFT即尺度不变特征变换，是用于图像处理领域的一种描述。这种描述具有尺度不变性，可在图像中检测出关键点，是一种局部特征...]]></description><category></category></item><item><title><![CDATA[三维重建技术综述]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104486466</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104486466</guid><author>vcpro126</author><pubDate>Mon, 24 Feb 2020 21:51:15 +0800</pubDate><description><![CDATA[&nbsp; &nbsp; &nbsp;三维重建技术通过深度数据获取、预处理、点云配准与融合、生成表面等过程，把真实场景刻画成符合计算机逻辑表达的数学模型。这种模型可以...]]></description><category></category></item><item><title><![CDATA[ICP算法的原理与实现]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104485844</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104485844</guid><author>vcpro126</author><pubDate>Mon, 24 Feb 2020 21:25:29 +0800</pubDate><description><![CDATA[一、背景与意义&nbsp;&nbsp;点云数据能够以较小的存储成本获得物体准确的拓扑结构和几何结构，因而获得越来越广泛的关注。在实际的采集过程中，因为被测物体尺寸过大，...]]></description><category></category></item><item><title><![CDATA[stl vector push_back解析]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/104442451</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/104442451</guid><author>vcpro126</author><pubDate>Sat, 22 Feb 2020 13:50:53 +0800</pubDate><description><![CDATA[查看 Visual Studio 2013的stl vector代码，发现push_back要先判断元素是否本来就在vector里面，再分情况push_back.

粗看不解，以为多此一举，其实里面暗藏玄机。

所以就搜索一下，发现了这个问题“Is it safe to push_back an element from the same vector?”的讨论，https://stackove...]]></description><category></category></item><item><title><![CDATA[括号运算符函数，类型转换函数： int operator()() vs operator int ()]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/103769015</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/103769015</guid><author>vcpro126</author><pubDate>Mon, 30 Dec 2019 16:45:46 +0800</pubDate><description><![CDATA[#include &lt;iostream&gt;
using namespace std;

class A {
public:
 A(int v = 0): n(v) {}
 int operator()(int m) {
  n = m;
  return n;
 }
 operator int () {
  return n;
 }
 int n;
};
int ...]]></description><category></category></item><item><title><![CDATA[用boost filesytem清空（删除）文件夹下所有文件]]></title><link>https://blog.youkuaiyun.com/vcpro126/article/details/103659972</link><guid>https://blog.youkuaiyun.com/vcpro126/article/details/103659972</guid><author>vcpro126</author><pubDate>Mon, 23 Dec 2019 09:16:39 +0800</pubDate><description><![CDATA[#include &lt;boost\filesystem\path.hpp&gt;
#include &lt;boost\filesystem\operations.hpp&gt;

用boost filesytem清空（删除）文件夹下所有文件

{
  boost::filesystem::path tmpPath(R"(C:\temp\test1)");
  boost::file...]]></description><category></category></item></channel></rss>