自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(246)
  • 资源 (5)
  • 收藏
  • 关注

原创 cuda中的流

默认流在执行的过程中,会等待其他非默认流执行完成后,然后再开始执行,并且默认流在执行的过程中,其他非默认流是不会执行的,时间上不会发生重叠。不同的默认流,其启动顺序是不可估的,有GPU调度器决定,但是在同一个流中,执行是严格按照串行的方式来执行的。cudaMemoryAsync 只能发生在非默认流中?cuda中的流分为默认流和非默认流。

2023-03-11 12:18:44 284 2

原创 Opencv实现纵横比保持的图像缩放

之前实现过C实现纵横比保持的RGB图像缩放,其实计算效率是不高的。opencv的好多实现都是自带mmx, sse加速的。所以就来研究一下如何用opencv来实现纵横比保持的图像缩放。查看了一下opencv resize函数的详细定义:函数原型:参数说明:,输入图像,Mat类型即可;,输出图像,当其非零时,有着dsize(第三个参数)的尺寸或者有src.size()计算出来;,输出图像的大小。如果它等于0,由下式计算: ,沿水平轴的缩放系数,默认值为0,且等于0时,由下式计算:

2022-06-04 21:38:19 885

原创 Tensorrt 自定义插件的调用顺序及过程

一个自定义插件需要实现两个类,分别继承于class MyPluginDynamic : public IPluginV2DynamicExclass MyPluginDynamicCreator : public IPluginCreator然后使用REGISTER_TENSORRT_PLUGIN(MyPluginDynamicCreator);看其详细定义,也就是将这个插件加入到一个全局链表中,方便trtexec根据op name来查找该插件,这个实现跟ffmpeg中注册编解码器是一个

2022-04-17 10:06:56 1012

原创 如何查看TensorRT默认支持的算子(operator)

TensorRT7.0支持的ONNX算子列表https://github.com/onnx/onnx-tensorrt/blob/84b5be1d6fc03564f2c0dba85a2ee75bad242c2e/operators.mdOperator Supported? Restrictions Abs Y Acos Y Acosh Y Add Y And Y ArgMax Y .

2022-04-05 09:58:37 4938

原创 TensorRT开发踩坑笔记

bindding 数据类型部一致某个输出的数据类型是int, 忽略了,一直当作是float解析,导致错误。虽然int 和 float 占用内存大小是一样的,但是解析方式错误,导致最终的错误,看来对每个bingding做输入输出校验,是很有必要的。 后期做动态转换也是可以解决Int32 *pInt32Buf = reinterpret_cast<int*>output_binding_float.data();...

2022-03-28 17:43:39 320

原创 C实现纵横比保持的RGB图像缩放

双线性插值,实现图像scale down, 记个笔记#include "stdafx.h"#include <iostream>#include "stdio.h"using namespace std;int img_down_scale(const unsigned char* src_img, unsigned char* dst_img, int src_width, int src_height, int dst_width, int dst_height)

2022-03-20 17:52:20 527 1

原创 TensorRT自定义插件的实现

对于比较新或者计算OP,tensorrt的响应并没有那么快,这个时候就需要我们自己实现自定义的插件,先开个题吧,后面整理一下代码,再帖上来,不错的链接实现TensorRT自定义插件(plugin)自由! (qq.com)...

2022-03-05 17:28:39 370

原创 C++ TensorRT开发笔记

有用的链接NVIDIA工程师的仓库GitHub - zerollzeng/tiny-tensorrt: Deploy your model with TensorRT quickly. 快速使用TensorRT来部署模型参考上述仓库的实现Python成神之路 - xavier平台上YOLOV5的TensorRT加速

2022-02-26 10:22:34 2707

原创 TensorRT trtexec 学习笔记

trtexec 实现onnx转tensorrt./trtexec --onnx=test.onnx --saveEngine=test.gie --verbose --dumpLayerInfo --dumpOutput --dumpProfile

2022-02-26 10:18:22 1583

原创 ONNXRuntime模型推理

直接贴code加载,推理import onnxruntime as ortimport torchimport timeimport cv2import numpy as npdef time_sync(): if torch.cuda.is_available(): torch.cuda.synchronize() return time.time()ort_session = ort.InferenceSession('./semseg.onn

2022-02-25 09:04:04 3293

原创 cuda 软硬件相关概念

软件概念thread block grid硬件概念sp sm cuda core

2022-02-19 16:17:35 528

原创 cuda 图像处理之sobel边缘检测

贴上来源代码吧,是在linux下调试通过的,包含源码和CMakeLists.txt环境配置配置好cuda pkg_config配置好opencv pkg_config之后的CMakeLists.txt会使用源码#include "cuda_runtime.h"#include <cuda.h>#include <device_functions.h>#include <opencv2/opencv.hpp>#include <iostr

2022-02-19 14:48:20 2252

原创 TensorRT int8 calibration table生成及解析

TensorRT int8推理的精度接近fp32, 但是存储空间更小,对memory的带宽消耗也少,同时推理速度也有一定的提升。是一项很重要的技术。跟fp16和fp32不一样,使用int8推理必须先要做calibriation,其实就是再做浮点数定点化的一些操作,然后将一些关键数据保存下来,下次使用时,就不用重新生成了。这些数据会被记录到一个calibration table的文件中。为了生成calibration table需要准备一个calibration dataset, 通常要500-1000个

2022-02-12 13:52:23 3399

原创 2021-02-20keras basic

from tensorflow.keras import layersfrom tensorflow.keras import initializersimport tensorflow as tffrom keras.models import Sequentialfrom keras.layers import Dense, Flattenfrom keras.layers.convolutional import Conv2D, MaxPooling2Dfrom keras.utils.n

2021-02-20 14:11:30 134 1

原创 cuda 入门(一)

环境配置:安装完cuda之后,查看cuda编译器nvcc能否能够正常工作。第一个Helloworld

2020-12-27 08:57:41 420

原创 ubuntu16.04 install ros kinetic

install guidehttp://wiki.ros.org/kinetic/Installation/Ubuntufailed at:sudo rosdep initrosdep updategot error:ERROR: cannot download default sources list from:https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-defa

2020-05-14 21:57:49 300

原创 opengl保存并加载二进制program

通常情况下,opengl 的shader会被编译成program,然后再将program送到GPU里面去执行。如果我们的应用程序,每次都用源码编译shader,这样效率肯定是不高的,特别是在嵌入式平台上, 性能比较弱的场景下。其实我们可以稍微修改一下我们的程序结构,将编译完的program保存下来,下一次再用的时候,直接加载保存好的二进制program就好了,不必每次都编译,浪费时间。...

2019-12-09 21:07:47 1643

原创 opengl 显示UYVY422格式的数据--性能提升

前面我们分享过,opengl 显示UYVY422格式的数据我们显示的是视频,每帧数据都copy到GPU中去渲染,图像数据一般是挺大的,copy数据的快慢对整个性能的影响还是很大的。在opengl中copy frame data用到的API是glTexImage2D.其实上文中的用法不太好。每帧图像都要渲染,直接在GPU内部分配一个固定的Buffer,不用每帧都去申请,然后再释放。...

2019-11-01 21:50:10 1907

原创 opengl 显示UYVY422格式的数据

前面我们分享过如何显示YUV420P的图像,渲染YUV420P数据这此我们分享一下UYVY422格式图像的渲染方法,关于YUV420P和UYVY422的区别,网上有很多图例可以帮大家理解。直接看代码,代码是直接可以运行的。完整代码和资源文件,请访问:https://download.csdn.net/download/szfhy/11940081#include <st...

2019-10-29 21:10:31 3245 8

原创 虚拟机通过无线网卡上网的配置办法

虚拟机通过桥接方式上网,跟一个host就可以组件局域网,非常方便。如果host使用的是有线连接,配置非常方便。如下图,选择桥接模式,复制物理网络连接状态可以不选,在“配置适配器中”选择要桥接的有限网卡,开启虚拟机之后就可以DHCP上网了。如果是host主机选择的是无线上网,上面的方法就要调整了。1,选择桥接模式,并且enable复制物理网络连接状态, 选择要桥接的无线网卡,...

2019-08-11 08:37:39 8409

原创 opengl 使用shader对图像进行锐化处理

在之前的博客中opengl 在显示的YUV视频序列上画多个框如果我们要对输入的视频内容做一个锐化处理,或者其他特效,在shader中如何处理呢?完整code如下,看到code就明白其中的道理了,还是很简单的。// VideoPlayer.cpp : Defines the entry point for the console application.//#include &...

2019-06-16 16:39:49 3691

原创 opengl GLSL宏加载shader source

在opengl shader的编写过程中,常用的两种方式是:将shader 定义为字符串,然后使用glShaderSource加载static const char *vs = "attribute vec4 vertexIn;\n" "attribute vec2 textureIn;\n" "varying vec2 textureOut;\n" "void main(...

2019-06-08 15:03:04 1960

原创 opengl 保存渲染好的图像

在前面的文章中,我已经可以将媒体文件通过opengl来进行显示。opengl 在显示的YUV视频序列上画多个框opengl 显示BMP图像如果希望将blend,或者其他方法处理过之后的图像数据保存为图像文件,该如何做呢?这个时候我们就要用到glReadPixels函数,GPU渲染完数据在显存,回传内存的唯一方式glReadPixels函数,glReadPixels:读取一些像素。当...

2019-06-01 12:59:45 4567 6

原创 numpy中数据拼接的方法

a = np.floor(20 * np.random.random((2,2)))b = np.floor(20 * np.random.random((2,2)))c = np.floor(20 * np.random.random((2,2)))print(a)print(b)print(c)[[ 8. 2.] [16. 15.]][[ 7. 0.] [10. 12.]]...

2019-05-28 22:05:00 3703

翻译 scikit-learn xgboost 预测波士顿房价

xgboost需要单独安装pip install xgboost #安装xgboost库pip install --upgrade xgboost #更新xgboost库import xgboost as xgbfrom xgboost import XGBRegressor as XGBRfrom sklearn.ensemble import RandomForestRegr...

2019-05-27 21:51:16 2615

翻译 scikit-learn 以线性回归为例学习性能评估指标

代码:from sklearn.linear_model import LinearRegression as LRfrom sklearn.model_selection import train_test_splitfrom sklearn.model_selection import cross_val_scorefrom sklearn.datasets import fetc...

2019-05-27 21:34:31 2007 1

翻译 scikit-learn 支持向量机--图视化

代码笔记:from sklearn.datasets import make_blobsfrom sklearn.svm import SVCimport matplotlib.pyplot as pltimport numpy as npX,y = make_blobs(n_samples=50, centers=2, random_state=0, cluster_std=0....

2019-05-27 21:20:38 672

翻译 scikit-learn 支持向量机-乳腺癌数据集探索

代码笔记:from sklearn.datasets import load_breast_cancerfrom sklearn.svm import SVCfrom sklearn.model_selection import train_test_splitimport matplotlib.pyplot as pltimport numpy as npfrom time im...

2019-05-27 21:13:43 4858

翻译 scikit-learn 逻辑回归--调参

代码笔记:from sklearn.linear_model import LogisticRegression as LRfrom sklearn.datasets import load_breast_cancerimport numpy as npimport matplotlib.pyplot as pltfrom sklearn.model_selection import...

2019-05-27 20:32:25 8412

翻译 scikit-learn 主成分分析--数据降维

代码笔记import matplotlib.pyplot as pltfrom sklearn.datasets import load_irisfrom sklearn.decomposition import PCAiris = load_iris()y = iris.targetX = iris.dataimport pandas as pdpd.DataFrame(X...

2019-05-27 20:25:06 1635

翻译 scikit-learn 随机森林代码学习--乳腺癌检测

from sklearn.datasets import load_breast_cancerfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.model_selection import GridSearchCVfrom sklearn.model_selection import cross_val_scor...

2019-05-26 22:18:23 1166

翻译 scikit-lean 随机森林代码学习--红酒

代码笔记%matplotlib inlinefrom sklearn.tree import DecisionTreeClassifierfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.datasets import load_winewine = load_wine()from sklearn....

2019-05-26 18:02:35 1214 1

翻译 scikit-learn 决策树代码学习-红酒数据

代码笔记1.导库from sklearn import treefrom sklearn.datasets import load_winefrom sklearn.model_selection import train_test_split2. 加载数据,拆分wine = load_wine()Xtrain, Xtest, Ytrain, Ytest = train_...

2019-05-26 16:23:43 1960

转载 机器学习模型评估混淆矩阵、ROC曲线和AUC以及PR曲线

在机器学习中,当我们基于某个业务建立模型并训练后,接下来我们需要评判模型好坏的时候需要基于混淆矩阵,ROC和AUC等来进行辅助判断。混淆矩阵也叫精度矩阵,是用来表示精度评价,为N *N的矩阵,用来判别分类好坏的指标。混淆矩阵中有以下几个概念:TP(True Positive): 被判定为正样本,实际也为正样本FN(False Negative):伪阴性 ,被判定为负样本,实际为正样...

2019-05-26 09:08:54 1404

原创 python机器学习常用参考手册

pandas:http://pandas.pydata.org/pandas-docs/stable/reference/index.htmlscikit-learn:https://scikit-learn.org/stable/seaborn:http://seaborn.pydata.org/numpyhttps://www.numpy.org/devdocs/

2019-05-25 19:51:04 379

原创 python可视化50图

http://www.machinelearningplus.com/plots/top-50-matplotlib-visualizations-the-master-plots-python/

2019-05-14 20:35:46 2624

原创 机器学习-分类性能评价指标-混淆矩阵confusion_maxtrix

关于混淆矩阵,之前看别人的一些教程,感觉作者很牛,图形化显示出来也很酷,最近深挖了一下文档,顿时感觉我们很牛人就间隔一张纸。详细的实现:confusion_matrix顺便添加自己的调试的代码,记个笔记。import numpy as npimport matplotlib.pyplot as pltfrom sklearn import svm, datasetsfrom ...

2019-05-10 11:05:17 2612

原创 jupyter notebook 引入交互式控件

安装pip install ipywidgets配置jupyter nbextension enable --py widgetsnbextension使用from ipywidgets import interactdef f2(x): return xinteract(f2, x='')显示效果

2019-05-07 22:51:41 2560

转载 jupyter快捷键

Ctrl + Shift + - #将一个 cell拆分为两个cellesc dd #删除一个cell, esc 按一下,切换到命令模式Ctrl+enter #执行本cellshift+enter #执行本cell且 向下建立一个新cellesc+m ...

2019-05-07 14:57:38 3427

转载 linux samba configure

Install Samba sudo apt-get updatesudo apt-get install samba Set a password for your user in Samba sudo smbpasswd -a <user_name> Note: Samba uses a se...

2019-04-23 10:14:50 285

git_ros_dep.zip

when you try to install ros in china without proxy, it is hard for you to do "rosdep init"and you will get errors, in order to solve this issue, you have to download this file to update rosdep

2020-05-14

show_uyvy422.zip

通过opengl shader将UYVY422格式的数据解码为RGB,然后显示。

2019-10-29

show_uyvy422_using_PBO.zip

使用PBO,DMA快速copy 内存的YUV数据到GPU的memory中,shader将YUV转换为RGB再显示出来,自带YUV资源文件。

2019-10-29

hdrnet cvpr2017

cvpr2017获奖文章,hdrnet,使用深度学习基础进行高动态范围图像处理,效果比较好,国内不好下载,共享在此,资源分数只能选择1-5,不能选零了。 希望能帮助到对图像处理感兴趣的亲

2018-05-26

mp4文档及解码程序源码

从官网上下载的标准SPEC,以及一个标准C写的MP4 Box parse程序,配合着SPEC看,会比较好。程序在Windows下使用VS2013可以直接跑,需要的话,可以看看main函数,如何传入mp4文档。

2018-05-17

空空如也

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

TA关注的人

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