C++
文章平均质量分 69
起个名字费劲死了
这个作者很懒,什么都没留下…
展开
-
2021-07-27
VS2013_WIN64_LIBLAS_编译记录libLAS 是一个用来读写三维激光雷达数据(LiDAR) 的 C++ 库。在学习、科研和研发中都会广泛运用。笔者在Win7 64位系统、CMake和VS2013编译libLAS库,在编译过程中走了一些弯路和遇到了不好问题,终于一一解决。现以博客的形式记录下来。供相关研究的同仁学习交流。OSGeo4W也可以编译,但是感觉出来的库太臃肿了编译前的准备:下载库编译libLAS库还须要Boost、GDAL、TIFF和GeoTIFF四个库的支持,所以在编译l原创 2021-07-27 16:13:26 · 207 阅读 · 0 评论 -
C++记录代码运行时间
#include<time.h>int main(){ clock_t begin_time, end_clock; begin_time = clock(); end_clock = clock(); cout << "Running time is: " << static_cast<double>(end_clock - beg...原创 2019-06-28 09:51:01 · 1005 阅读 · 0 评论 -
C++:char和string
1.数字字符转整型char sz[] = "123";int n = atoi(sz);原创 2020-08-05 22:45:47 · 181 阅读 · 0 评论 -
C++ :找到一个或多个多重定义的符号解决办法
原因解释:https://blog.csdn.net/xiamentingtao/article/details/54341287解决方法1:如果对应的函数较短可以在前面加inline,将其变为内联函数解决方法2:头文件中只进行函数的定义,函数的实现放在源文件中...原创 2020-05-07 13:19:10 · 3671 阅读 · 0 评论 -
C++:static关键词的作用
1. 修饰函数(普通函数和类函数)的局部变量static修饰一个普通的局部变量时,关键词改变了这个变量的生命周期,这个变量的生命周期和程序的生命周期相同,直到程序结束才销毁。#include <stdio.h>void test(){ static int a=0;//a为局部变量 a++; printf("%d",a);}int main (){ int i=...原创 2020-04-18 13:36:14 · 145 阅读 · 0 评论 -
GDAL:利用Shape文件对遥感影像进行裁剪
支持单个或多个多边形要素的shp文件,对于没有仿射信息的影像裁剪不成功。直接上代码://ImageCut.h#include "gdal_priv.h"#include <iostream>#include "ogr_spatialref.h"#include "ogrsf_frmts.h"#include "gdalwarper.h"using namespace ...原创 2020-04-18 12:24:55 · 4263 阅读 · 9 评论 -
VS属性配置问题
1. 设置当前工程临时的系统环境变量右击项目属性–>调试–>环境PATH=C:\3rdparty\Opencv3.4.4\x64\vc15\bin;%PATH%这样工程就可以直接访问环境目录里的dll2. int main(int argc,char argv[])在控制台输入或程序中调试时*右击项目属性–>调试–>命令参数...原创 2020-04-17 11:23:58 · 202 阅读 · 0 评论 -
RANSAC算法的理解---直线检测和圆检测的小例子
算法流程:代码稍后贴上:原创 2020-04-02 12:44:22 · 2046 阅读 · 2 评论 -
单像空间后方交会(包括Matrix.h模板类)
链接:https://blog.csdn.net/x_ying_/article/details/89514098?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158441689419726867863326%2522%252C%2522scm%2522%253A%252220140713.130056874…%2522%257D...转载 2020-03-17 12:48:52 · 466 阅读 · 0 评论 -
C++判断操作系统
#if defined(linux)// Linux系统#elif defined(_WIN32)// Windows系统#endif原创 2020-03-10 18:21:15 · 1619 阅读 · 0 评论 -
Linux下Clion编译Cmake备忘
cmake_minimum_required(VERSION 3.14)project(test1)//生成的可执行文件名称set(CMAKE_CXX_STANDARD 11)//C++版本set(INC_DIR ./include)//第三方库的头文件set(LINK_DIR ./lib)//第三方库的库文件,此时为.soinclude_directories(${INC_DIR}) ...原创 2020-02-15 23:59:05 · 432 阅读 · 0 评论 -
C++:判断文件是否存在、创建删除文件Windows和Linux
https://blog.csdn.net/u012005313/article/details/50688257/转载 2020-02-15 21:19:08 · 799 阅读 · 0 评论 -
exe文件间的内存共享
示例:#include <windows.h>#include <iostream>using namespace std;int main(void){ HANDLE hFileMap; HANDLE hEvent; hEvent = CreateEvent(NULL, false, false, TEXT("MyEvent"));//开辟事件 if...原创 2019-12-31 14:46:26 · 269 阅读 · 0 评论 -
UTF-8和ANSI编码格式互转问题
在读写JSON文件的时候发现中文乱码的情况,默认编码方式为ANSI,外来字符串进行赋值时需要先转为UTF-8代码转载链接为(原文章地址):https://blog.csdn.net/bajianxiaofendui/article/details/83302855//UTF_ANSI.h#include "windows.h"#include <string>#include...转载 2019-12-27 17:58:13 · 3880 阅读 · 0 评论 -
linux和window下使用mpi的方法
windows: mipexec -n x xxx.exe xxx.jsonLinux: mpirun -n x xxx.exe xxx.jsonmpirun --allow-run-as-root -n x xxx.exe xxx.jsonLinux本机普通用户和root权限切换:su root 密码:123456原创 2019-12-17 18:25:13 · 607 阅读 · 0 评论 -
MPI简单记录:
#include <iostream> #include <mpi.h> int main(int argc, char* argv[]) { // 初始化MPI环境 MPI_Init(&argc, &argv); int RankID; // 获取当前进程在通信器MPI_COMM_WORLD中的进程号 MPI_Comm_rank(M...原创 2019-12-12 18:20:32 · 174 阅读 · 0 评论 -
C++:一维二维动态数组创建
//一维动态数组---------------------------------------------------------------------------------- int matrix_size = 10; int *matrix_one = new int[matrix_size]();//默认初始化,初始化为0 matrix_one[0] = 1;//赋值 matri...原创 2019-12-05 14:22:39 · 498 阅读 · 0 评论 -
QT+GDAL实现影像的读取和显示
单纯备份一下源代码,详细流程参考https://blog.csdn.net/deirjie/article/details/37872743//open_image.h#pragma once#include <QtWidgets/QMainWindow>#include "ui_open_image.h"#include "gdal_priv.h"#include <...转载 2019-11-28 18:38:00 · 6149 阅读 · 12 评论 -
GDAL:练习1
#include "gdal_priv.h"#include "cpl_conv.h"#include<iostream>#include<string>using namespace std;int main(){ //注册文件格式; GDALAllRegister(); const char* pszFile = "C:\\Users\\Admini...原创 2019-11-28 11:12:20 · 178 阅读 · 0 评论 -
VS2013+GDAL2.3.3配置详细流程
VS2013+GDAL2.3.3配置详细流程下载gdal2.3.3 https://trac.osgeo.org/gdal/wiki/DownloadSource找到"VS2013 x64 本机工具命令提示"cd到gdal目录下修改gdal目录下的nmake.opt,用notepad++打开,修改安装目录,默认是C盘支持这么多版本,vs2013对应的为1800,后面用到...原创 2019-11-27 19:31:43 · 789 阅读 · 0 评论 -
opencv:像素操作
图像锐化(拉普拉斯算子)(像素操作)#include <opencv2/imgproc/imgproc.hpp>#include <opencv2/highgui/highgui.hpp>#include <iostream>using namespace std;using namespace cv;void sharpen(Mat &...原创 2019-11-26 10:17:35 · 122 阅读 · 0 评论 -
VS打包+图标制作
2. 中文简体3.4. 添加文件5.6.7. 重新生成解决方案即可8. 图标可以在网站http://www.faviconico.org/favicon制作ico后缀的图片文件,然后倒入即可原创 2019-11-06 17:34:08 · 565 阅读 · 0 评论 -
OpenCV配置中出现的问题:
我电脑的配置:VS2013+opencv+opencv_contrib3.0.0整体配置思路借鉴链接:https://blog.csdn.net/lex_me/article/details/84781591我配置出现的问题:报ippicv_windows_20141027.zip的问题,去网站下载一个就可以提示vtkopengl的...原创 2019-11-01 09:32:06 · 194 阅读 · 1 评论 -
C++静态库和动态库制作流程
只记录流程:1.静态库制作(1)新建静态库高程(2)新建头文件和源文件进行代码编写编写源文件和头文件,做一个简单的四则运算(3)生成解决方案,在工程目录下会生成static_lib.lib文件(4)新建测试工程,测试静态库是否制作成功,将static_lib.lib文件和static_lib.h文件复制到新的工程文件下。(5)调用方法《1》直接在程序运行前包含静态库的...原创 2019-10-28 15:49:47 · 320 阅读 · 0 评论 -
C++:priority_queue大堆顶和小堆顶
123转载 2019-07-22 17:39:32 · 1267 阅读 · 0 评论 -
C++:模板函数的书写及调用
模板函数基本类型:调用方式和正常函数调用一致。template <class 类型参数1, class类型参数2, ...>返回值类型 模板名(形参表){ 函数体}例子:1.template<typename T>void//对vector进行排序,并取索引vector_sort(std::vector<T> vector_inpu...原创 2019-07-22 16:22:43 · 725 阅读 · 0 评论 -
C++:vector学习,随笔
1.查找vector中某个元素是否存在?vector<string> vStr;int nRet = std::count(vStr.begin(), vStr.end(), "xiaochun");//判断vector中是否有 "xiaochun" 这个元素count(vector1.begin(), vector1.end(), 10)//返回值为对应元素(10)的个数。...原创 2019-07-19 16:23:15 · 173 阅读 · 0 评论 -
C++:参考手册
链接:https://zh.cppreference.com/w/cpp转载 2019-07-16 11:30:24 · 199 阅读 · 0 评论 -
C++:class类,多输出
例子:class Cloud_Features{ public: MatrixXd Feature(PointCloud<PoinT>::Ptr &cloud, int K, MatrixXd *output_feature,int *num);//MatrixXd *output_feature,int *num表示输出参数 int get_num(); //...原创 2019-07-01 08:38:17 · 569 阅读 · 3 评论 -
C++:struct学习
例子:转载:https://www.cnblogs.com/zplutor/archive/2011/09/25/2190315.htmlstruct S { int Value;}; S GetS(int value) { S s; s.Value = value; return s;} int wmain() { S s = ...原创 2019-07-10 20:44:46 · 977 阅读 · 0 评论 -
PCL点云点选+区域生长:
#include <iostream>#include <vector>#include <pcl/io/pcd_io.h>#include <pcl/point_types.h>#include <pcl/visualization/pcl_visualizer.h>#include "region_growing.h"bo...原创 2019-08-14 15:31:22 · 1750 阅读 · 8 评论 -
PCL:PCL_PCLPlotter类,绘制折线图
//头文件:#include <pcl/visualization/pcl_plotter.h> visualization::PCLPlotter *plot_(new visualization::PCLPlotter("高程与点数折线图")); plot_->setBackgroundColor(1, 1, 1); plot_->setTitle("高程与点数...原创 2019-08-20 10:03:10 · 1090 阅读 · 2 评论 -
C++多线程编程学习(1):
多线程编程学习(1)1.创建一个线程开关线程的API函数:HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes, //SD:线程安全属性,常置为NULLSIZE_T dwStackSize, //initialstacksize:初始化栈的大小,可设置为0LPTHREAD_START_ROUTINE lpStar...原创 2019-08-12 16:09:23 · 182 阅读 · 0 评论 -
C++:函数体缺省参数的书写方法
**在函数体书写过程中,总会有这样的需求:**函数功能一致,但中间可以根据输入的参数进行判断、执行。原创 2019-08-30 16:34:57 · 313 阅读 · 0 评论 -
PCL:利用霍夫变换进行直线检测
最近涉及到直线检测的东西,所以查了查资料,发现大多数都是图像方面的,没查到点云方面的资料,给出的源码很多也是利用opencv完成,有点心累,所以还是自己写一下霍夫变换吧。具体原理,看大神解释(直线检测,圆检测等----):https://blog.csdn.net/shanchuan2012/article/details/74010561需求:在XOY平面内,检测混有噪声的点云数据中的直线。...原创 2019-08-30 17:03:34 · 6496 阅读 · 6 评论 -
C++/PCL:最小二乘拟合平面直线,平面多项式曲线,空间多项式曲线
//fitting.h#include <pcl/point_types.h>#include <vector>#include <Eigen/dense>#include <vtkPolyLine.h>#include <pcl/visualization/pcl_visualizer.h>#include <pcl/...原创 2019-09-04 20:24:07 · 10173 阅读 · 12 评论