自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 C++获取时间,精确到毫秒

【代码】C++获取时间,精确到毫秒。

2023-05-05 18:55:32 341

原创 windows安装TVM踩坑记录

tvm安装踩坑

2023-04-16 09:38:31 348

原创 [笔记]配置PCL点云库的CMakeLists.txt

win11 cmake配置PCL点云库

2022-11-20 00:06:07 1299

原创 [笔记]darknet(.weights)—>onnx—>.engine

利用Darknet训练YOLOv4,利用TensorRT部署到Jetson平台。

2021-11-05 12:41:54 980

原创 C++中char型数组、string 和 int 的相互转换

//int->stringint x1 = 312;string s1 = to_string(x);cout << s1 << endl;//string->intstring s2 = "123456";int x2 = std::stoi(s2);cout << x2 << endl;//char->stringchar c[80] = "1a2b3d4d";string s3 = c;cout <&lt

2021-10-29 15:09:08 289

原创 Ubuntu18.04开机自动启动脚本

在根目录下创建一个start.sh脚本,内容如下:sleep 20sgnome-terminal -t "roscore" -x bash -c "source /home/nvidia/.bashrc;source /opt/ros/melodic/setup.bash;roscore;exec bash;"sleep 10sgnome-terminal -t "rviz" -x bash -c "source /home/nvidia/.bashrc;source /opt/ros/melodi

2021-09-08 09:07:24 530

原创 [笔记]ros_deep_learning based on jetson-inference on Jetson AGX Xavier

https://www.ncnynl.com/archives/201904/2985.htmlhttps://github.com/dusty-nv/jetson-inferencehttps://github.com/dusty-nv/ros_deep_learning1.roscore2.rosrun image_publisher image_publisher __name:=image_blisher ~/jetson-inference/data/images/orange_0

2021-08-13 13:38:04 722

原创 Jetson AGX Xavier 安装 ROS melodic

git clone https://github.com/jetsonhacks/installROSXavier.gitcd installROSXavier./installROS.sh -p ros-melodic-desktop-full -p ros-melodic-rgbd-launch

2021-08-11 20:09:36 347

原创 [转载]使用 TensorRT 加速深度学习推理 Speeding Up Deep Learning Inference Using TensorRT

最近在NVIDIA Blog上看到一篇TensorRT教学,挺不错的,收藏了一下。原文:Speeding Up Deep Learning Inference Using TensorRT对应中文版:使用 TensorRT 加速深度学习推理最近更新了基于TensorRT8.0的:Speeding Up Deep Learning Inference Using NVIDIA TensorRT (Updated)使用 NVIDIA TensorRT 加速深度学习推理(更新)...

2021-08-11 13:55:43 254

原创 [ROS学习笔记]同时一个节点中订阅多个话题并发布消息

项目中有个环视功能(最简单的那种,需要将4个摄像头捕捉的画面拼到一张图上),需要4个Subscribers和1个Publisher。主要参考这一篇官方文档http://wiki.ros.org/message_filters和这两篇文章https://blog.csdn.net/orange_littlegirl/article/details/97425696https://blog.csdn.net/heyijia0327/article/details/45567373理论上,综合这几篇文章

2021-05-17 16:44:58 4412 2

原创 基于Ubuntu18.04搭深度学习和C++开发环境

搭环境需要(有的需要开手机热点):一、更改国内sourcealt+F2 输入software-properties-gtk,选择一个国内的源即可。二、搜狗输入法https://blog.csdn.net/zmy_666/article/details/86509914注意有问题重启计算机。三、qtcreatorsudo apt-get install qt5-default qtcreator四、先装显卡驱动(安装完重启),后安装CUDA、cuDNN(官网下载)https://blog.

2021-05-08 18:24:33 346

原创 单目摄像头测距——单应性

之前在做车道线识别项目的时候,同事提出来用摄像头测距。大致研究了一下,理论上是无法测距的,因为想用2维信息(像素坐标系)还原3维信息(世界坐标系),是不可能的,但是如果假设测量的点在地面上就是用2维信息还原2维信息,还是有得搞。预备知识:像素坐标系——图像坐标系——相机坐标系——世界坐标系,这4个坐标系的关系:相机的内参矩阵M 将相机坐标系和像素坐标系联系起来,相机的外参矩阵W 将世界坐标系和相机坐标系联系起来,(这里注意一点,相机的内参包括内参矩阵和畸变系数,这里说的是针孔相机模型(pin-hole),

2021-04-29 21:31:33 1070 1

原创 OpenCV+CUDA 遍历cv::Mat笔记

cv::Mat::data指针,默认是uchar* 类型,用的时候可以用强制类型转换成需要的类型,比如uchar3*。https://blog.csdn.net/kelvin_yan/article/details/48315175https://riptutorial.com/zh-TW/opencv/example/9922/%E4%BD%BF%E7%94%A8cv----mat----ptr%E9%80%B2%E8%A1%8C%E9%AB%98%E6%95%88%E7%9A%84%E5%83%8F

2021-04-19 18:51:06 2148 1

原创 [ROS学习笔记]ROS在同一个节点里订阅和发布消息

#include <ros/ros.h> class SubscribeAndPublish{public: SubscribeAndPublish() { //Topic you want to publish pub_ = n_.advertise<PUBLISHED_MESSAGE_TYPE>("/published_topic", 1); //Topic you want to subscribe sub_ = n_.sub

2021-04-19 10:15:54 1675 2

原创 [图像插值]一种直观的后向映射插值算法

之前讲透视变换的文章用的是后向映射算法,但是这个算法虽说从效果上看没啥大毛病,但实际上比较粗糙,因为dst(x, y)的值不涉及插值算法,仅仅是dst(x, y)=src(x, y)

2021-04-15 13:57:04 436

原创 keras.layer.Concatenate()和keras.layer.concatenate()的区别

import tensorflow as tffrom tensorflow import keras第一个坑是显存的使用,前一篇有记录。4月8日更新,keras.layer.Concatenate()和keras.layer.concatenate()的区别。前者是创建一个Concatenate层,像函数一样立即使用它来合并几个输入;后者创建一个Concatenate层并立即使用给定的输入对其进行调用。具体用法如下concat = keras.layers.Concatenate()([inpu

2021-04-08 20:41:00 1044

原创 TensorFlow2.x 设置显存使用

记录一下使用TensorFlow遇到的第一个坑——显存管理。最开始不知道这个东西,每次跑完一遍都得重启…学习了Aurelier Geron的<<Hands-on Machine Learning with Scikit-learn, Keras & TensorFlow>>的第十九章才知道是咋回事。原文截图:按着我的习惯,是先开一个terminal用于监控显存使用,每秒刷新一次。watch -n 1 nvidia-smi在训练的时候,TensorFlow默认会用尽所

2021-04-08 09:05:04 888

原创 用OpenCV打开USB摄像头

#include <iostream>#include <opencv2/opencv.hpp>#include <opencv2/imgproc.hpp>#include "opencv2/core.hpp"using namespace std;using namespace cv;int main(){ //Open USB camera demo. cv::VideoCapture capture(0); cv::Mat

2021-04-02 07:10:04 1017

原创 CUDA初级——矩阵乘法 (both in CPU and GPU)

//matrix[6][6] x matrix[6][6]#include "stdio.h"#include <iostream>#include <cuda.h>#include <cuda_runtime.h>#include <math.h>#include <time.h>#include <chrono>#define size 500using namespace std;void cpu_ma

2021-03-20 13:40:57 303

原创 CUDA+OpenCV实现透视变换

前几天写了一个CPU版本的透视变换,经过了几天的debugging,终于移植到GPU里了,CPU版本的链接:https://blog.csdn.net/YaoJiawei329/article/details/114833550这算是个笔记吧。CUDA代码如下#include <iostream>#include <vector>#include <opencv2/opencv.hpp>#include <opencv2/imgproc.hpp>

2021-03-16 09:52:24 1084

原创 关于CUDA/C++/OpenCV混合编程的笔记

global 函数中可以用printf函数,但是不能用cout << endl;__global__ void print_i(int* d_i) // /home/psdz/test/cuda_c_test_9/main.cu(16):-1: error: error: //calling a __host__ function("std::basic_ostream<char, std::char_tr...

2021-03-15 16:09:30 737

原创 透视变换

最近根据项目需要,需要用到透视变换,如果直接调用cv::warpPerspective()虽然可以直接完成任务,但是因为后期需要移植到GPU里,所以需要自己实现。(本想直接改写cv::warpPerspective()的,但是OpenCV源码又调用了各种函数而且还有乱七八糟的东西,所以才打算自己搞。)目前kernel函数还没改写完,过几天测试好了再更。由于透视变换矩阵是个常量,只需要计算一次,所以可以调用cv::getPerspectiveTransform(),实际上就是借用这个函数来求解一个八元八次线性

2021-03-15 15:35:07 783

原创 使用CUDA STREAM处理一张图片

本文写了一个demo,利用cuda流概念,将处理图片的任务分为两个任务:第一个流(stream[0])处理上半张图片,第二个流(stream[1])处理下半张图片。下面先看代码:#include <iostream>#include <vector>#include <opencv2/opencv.hpp>#include <opencv2/imgproc.hpp>#include "opencv2/core.hpp"#include "cuda.

2021-02-22 14:03:34 766

原创 最小二乘法多项式曲线拟合

Mat LaneDetector::polyfit(vector<Point>& in_point, int n){ //n次拟合, 假设 m = size int size = in_point.size(); int x_num = n + 1; Mat mat_u(size, x_num, CV_64F); Mat mat_y(size, 1, CV_64F); for (int i = 0; i < mat_u.rows

2021-01-06 10:33:16 310

原创 车道线识别之——增强黄色车道线

为了更好的识别车道线,需要给黄色车道线增强,方法是将RGB图片转换为HSV图片,增强HSV图片的第三位(V)的数值,并将如下是普通代码和CUDA代码#include <iostream>#include <opencv2/opencv.hpp>#include "opencv2/core.hpp"#include "cuda.h"#include "cuda_runtime.h"using namespace std;using namespace cv;voi

2021-01-06 10:27:20 1286 1

原创 CUDA+OpenCV简单处理图像

CUDA+OpenCV简单处理图像本文用到的环境:Ubuntu18.04+CUDA10.1+OpenCV3.4.11+QtCreator5本文针对的是在OpenCV中最常用的图片类型:CV_8UC1和CV_8UC3。在cpu上,可以用cv::Mat::at或者cv::Mat::ptr来对图像进行逐个像素的访问和处理,但是想要移植到gpu里,又不使用cv::cuda模块,关键在于指针的传递。...

2020-08-18 19:22:29 2716

原创 OpenCV3实现图像拼接融合

本人小白一枚,"Hello World!"级别C++程序员,也是个OpenCV词典使用者。因项目需要,需实现4张图片(左上、右上、左下、右下)融合的功能。虽然应该先完成标定工作,奈何没经验,在标定环节卡了几天后决定先完成融合工作。搜了两天都没有搜到适合的代码或demo,只有搜到拼接左右两张图片,或者连续拼接多张图片的代码。今天突然想到该怎么拼接了,废话不多说,先看"算法"图:是不是很直观。在实验室随手拍了几张,因为上传照片的大小有限制,所以拼接的不是原图,效果比原图的拼接效果要差一些。左上(/home

2020-05-11 08:24:26 1521

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除