原创 cmake CheckSymbolExists

CheckSymbolExists 是CMake的公共模塊,位於/usr/share/cmake-3.5/Modules目錄下。該模塊定義了宏check_symbol_exists MACRO(CHECK_SYMBOL_EXISTS S

原创 使用Boost::Python在C++應用程序中嵌入Python

使用Boost::Python在C++應用程序中嵌入Python:第一部分 翻譯: Leon Lee([email protected]) 原文:在此 在本系列教程的簡介中,我說了將Python代碼集成到Granola代碼庫中的動機。簡而言

原创 PCL學習之點雲可視化:座標字段、隨機、單一顏色、法向量

pcl中幾種常見的點雲渲染方式 (1)顏色區別深度 此方法在PointCloudColorHandlerGenericField類中實現,該將不同的深度值顯示爲不同的顏色,實現以顏色區分深度的目的,PointCloudColorHandl

原创 C/C++ 使用mmap/munmap函數分配內存

在C/C++ 中常用的內存分配和管理的方式有很多,如智能指針, STL容器, new/delete, malloc/free, brk, sbrk等,linux有一種比較底層的內存管理方式mmap/munmap,需要完全自己來維護分配的虛

原创 boost::filesystem文件操作

#include <boost/filesystem.hpp> #include <iostream> #include <boost/ratio.hpp> #include <map> #include <vector> #inclu

原创 C++ 解析yaml文件的使用方法

1. 安裝yaml-cpp    安裝yaml-cpp庫 git clone https://github.com/jbeder/yaml-cpp.git cd yaml-cpp mkdir build && cd build cmak

原创 卡爾曼濾波算法-Kalman Filter Algorithm

1、簡介 1.1 濾波是什麼 所謂了濾波,就是從混合在一起的諸多信號中提取出所需要的信號。 1.2 信號的分類: (1)確定性信號:可以表示爲確定的時間函數,可確定其在任何時刻的量值。(具有確定的頻譜) (2)隨機信號:不能用確定的數學關

原创 C++虛函數 - 靜態函數能否爲虛函數

1.virtual與靜態函數 C++中,靜態成員函數不能被聲明爲virtual函數。 例如,下面的程序會編譯失敗。 class Test { public: // 編譯錯誤:static成員函數不能聲明爲virtual

原创 CmakeLists.txt 編譯protobuf文件

Google Protocol Buffer( 簡稱 Protobuf) 是 Google 公司內部的混合語言數據標準。Protocol Buffers 是一種輕便高效的結構化數據存儲格式,可以用於結構化數據串行化,或者說序列化。它很適合

原创 C++定時器實現定時任務

1.1、單次定時任務實現 boost 的asio庫裏有幾個定時器,老的有 deadline_timer , 還有三個可配合 C++11 的 chrono 使用的 high_resolution_timer 、 steady_timer 和

原创 C++掃描文件夾中的文件,並對文件名字符串排序

       最近遇到一個需求,需要讀取文件夾中的所有圖片,並根據圖片名字對圖片進行排序。這裏利用boost::filesystem庫對文件夾進行掃描,然後把對應圖片後綴的文件名(絕對路徑)放入一個容器中,再對容器中的元素進行排序,排完序

原创 C++內存分配函數std::calloc()

函數:void*  calloc(size_t num,size_t size); num爲元素個數,size爲每個元素的字節長度。 頭文件 malloc.h 在內存的動態存儲區中分配n個長度爲size的連續空間,函數返回一個指向分配起始

原创 CMake經驗

命令 源文件收集 一般情況下,我們通過逐個列出的方式,設定源文件集(set(SRC_LIST src/main.c src/other.c))。這樣的好處是可以明確控制那些文件會被加入到工程中。 但是有些時候,如果源文件較多,一個一個列出

原创 ros C++解析bag包

ros中的bag包是按逐幀序列存儲的,解析的時候創建View類可以逐幀把數據讀取出來,然後按照對應topic數據做相應的處理,一下demo是一個小案例,如何解析一個bag包。 #include <rosbag/bag.h> #inclu

原创 百度 Apollo Cyber RT簡介、基本概念以及與 ROS 對照

一,背景 ROS 應用於自動駕駛領域的不足: 調度的不確定性:各節點以獨立進程運行,節點運行順序無法確定,因而業務邏輯的調度順序無法保證; 運行效率:ROS 爲分佈式系統,存在通信開銷 二,Cyber RT 框架 從下到上依次爲: