自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python读取MRI图像(.nii.gz)以及存储一个新的.nii.gz的方法

https://nipy.org/nibabel/nibabel_images.html

2022-04-08 15:40:08 847

原创 一键清除docker缓存

清除docker中不使用的容器(数据卷)docker system prune --volumes

2022-04-06 17:57:09 1596

原创 TensorRT 3D反卷积不支持非对称padding

转trt模型时报错: ASSERT(begPadding == endPadding && “TensorRT does not support asymmetrical padding for 3D deconvolutions!”, ErrorCode::kUNSUPPORTED_NODE);原因:TensorRT目前还不支持3D反卷积非对称padding解决方法:找到源码TensorRT/parsers/onnx/builtin_op_importers.cpp文件,找到Con

2022-01-26 16:32:31 3269

原创 TensorRT动态卷积转置(ConvTranspose)自定义op(动态反卷积/权重动态反卷积)

随着算法模型的不断演变,常规的模型结构已经不能满足算法人员的需求,于是衍生出形色各异的op,比如动态卷积转置,即前向传播过程中,weight也会随着输入的不同而发生改变。声明:所谓动态卷积转置指在前向传播过程中weight发生变化此处的动态卷积转置只是笔者对该op的一种称呼本文ConvTranspose只支持2D目前发现只在TensorRT中存在动态的问题,其他如onnx、OpenVINO不存在该问题动态卷积转置大概长下面这个样子。其中input是输入,weight也是输入。weight根据前

2022-01-10 11:39:50 954

原创 TensorRT动态卷积自定义op(多输入卷积/权重动态卷积)

随着算法模型的不断演变,常规的模型结构已经不能满足算法人员的需求,于是衍生出形色各异的op,比如动态卷积,即前向传播过程中,weight也会随着输入的不同而发生改变。声明:所谓动态卷积指在前向传播过程中weight发生变化此处的动态卷积只是笔者对该op的一种称呼TensorRT通过ConvMultiInput来实现这种卷积(多输入卷积),但是只支持INT8显式量化目前发现只在TensorRT中存在动态的问题,其他如onnx、OpenVINO不存在该问题动态卷积大概长下面这个样子。其中inpu

2022-01-06 17:38:51 2117 8

原创 解决TensorRT报错:Assertion Error in trtSmToCask: 0 (Unsupported SM.)

错误信息:E20211126 11:55:13.654 140412916315904 tensorrt.cpp:10] …/rtSafe/cuda/caskUtils.cpp (98) - Assertion Error in trtSmToCask: 0 (Unsupported SM.)原因:TensorRT版本与cuda或者cudnn版本不匹配,如笔者的TensorRT版本为7.2.1,而cuda为最新的11.5版本,其中cuda版本过高无法适配:解决:重装cuda或者TensorRT

2021-11-27 10:01:58 2289

原创 TensorRT动态输入尺寸下的自定义op巨坑

首先,关于自定义插件基本问题,这里我就不再赘述了如何写一个插件:参考此处如何在python 或 C++中使用自定义插件:参考此处自定义op需要编写:getOutputDimensions,我们会根据inputs来推断output dimensions,如:nvinfer1::DimsExprs DReflectPadPlugin::getOutputDimensions(int outputIndex, const nvinfer1::DimsExprs *inputs, int nbInputs,

2021-11-19 17:06:41 1302

原创 onnx转TensorRT推理自定义插件(op)的方式,Python&C++

首先,无论是python还是C++,我们都要写一个自己的plugin,一般的不支持op网上都有参考的版本,写plugin的参考教程:如何写好一个opC++实现和使用过程:下载TensorRT官网源码, 进入plugin可以看到许多已经定义好的插件可以参考,照着写就行,以ScatterND为例。先写好自己的plugin,如名为:myplugin注意:此处plugin代码里面不能包含REGISTER_TENSORRT_PLUGIN(MyPluginCreator)代码,不然会导致重复注册的问题。在p

2021-11-08 15:19:45 3561 2

原创 基于python实现onnx转TensorRT自定义op

TensorRT源码上提供了一些python的samples,但是说好的提供onnx_packnet这个sample是onnx2trt自定义op的示例,但却没有写完整,不熟悉的人很难看懂。但其实Python版本的onnx2trt自定义op很简单,过程如下:找到一个需要自定义op的C++插件(或者自己写)如:grid_sampler使用cmake将上述grid_sampler相关文件生成C++库文件libtensorrtplugins.so在Python文件的最开头加上一句:ctypes.CDLL("

2021-09-15 21:47:32 788

原创 clang-tidy静态语义检查,安装、使用、检查项注解

clang-tidy是非常不错的静态语义检查项,很多人会使用它来做一些简单的语义检查。安装clang-tidy:apt-get install clang-tidy使用clang-tidy的方式是:clang-tidy --checks='Checks' test.cpp -- -I ./src/ -x c++其中–checks=可以写‘*’,表示对所有clang-tidy检查项进行检查,上面‘Checks’是指定检查.clang-tidy文件里的检查项(下面介绍);test.cpp是

2021-08-17 14:22:21 11640 2

原创 clang-tidy找不到c++头文件,报错clang-diagnostic-error

error: ‘memory’ file not found [clang-diagnostic-error]需要指定编译环境解决方法:在尾部加-- -x c++来指定c++编译器(默认应该是gcc)clang-tidy --checks='*' test.h -- -x c++

2021-08-09 20:16:13 4703

原创 使用python进行onnx转trt(TensorRT)模型,简单有效

运行环境python 3.6.9tensorrt 7.1.3.4简单代码实现import tensorrt as trtimport sysimport osTRT_LOGGER = trt.Logger(trt.Logger.WARNING)EXPLICIT_BATCH = 1 << (int)(trt.NetworkDefinitionCreationFlag.EXPLICIT_BATCH)def printShape(engine): for i in r.

2021-07-24 10:08:30 4787 14

原创 docker run时报Unable to find image ‘***********:latest‘ locally错误

我用下面的命令创建容器:docker run -it nvcr.io/nvidia/tensorrt /bin/bash报错:Unable to find image ‘nvcr.io/nvidia/tensorrt:latest’ locallydocker: Error response from daemon: manifest for nvcr.io/nvidia/tensorrt:latest not found: manifest unknown: manifest unknown.

2021-07-06 10:37:46 44583 4

原创 openvino运行CMake时找不到InferenceEngineConfig.cmake,TBBConfig.cmake,ngraphConfig.cmake三个文件

运行时报错:CMake Error at common/utils/CMakeLists.txt:15 (find_package):By not providing “FindInferenceEngine.cmake” in CMAKE_MODULE_PATH thisproject has asked CMake to find a package configuration file provided by“InferenceEngine”, but CMake did not find o

2021-07-01 16:01:02 1961

原创 Linux(Ubuntu)安装ONNXRuntime C++ API

安装python3apt-get install python3安装pip3apt-get install python3-pippip3 install --upgrade pip安装依赖pip3 install --upgrade setuptoolspip3 install --upgrade wheelpip3 install numpy安装cmakeapt-get install cmake下载onnxruntime(建议按照官方文档直接clone,.

2021-05-13 11:38:14 7203 8

原创 打包python

做个记号pyinstaller --paths D:/python/Lib/site-packages/PyQt5/Qt/bin --hidden-import=h5py.defs --hidden-import=h5py.utils --hidden-import=h5py.h5ac --hidden-import=h5py._proxy -F -c removal.py

2019-11-29 22:08:09 164

原创 解决python打包No module named 'h5py.defs'的问题

http://www.voidcn.com/article/p-sfkywxvj-bpc.htmlImportError: No module named ‘h5py.defs’在生成exe时加上一段–hidden-import=h5py.defs,就能搞定了。pyinstaller --hidden-import=h5py.defs --hidden-import=h5py.utils...

2019-11-29 21:36:10 1454

原创 python(pycharm)如何安装skimage?

在pycharm上面安装skimage失败,可以尝试安装scikit-image,如果不行,那就用pip安装。pip install scikit-image还是不行的话,尝试用pip install --user scikit-image

2019-09-05 14:13:37 10740

原创 在keras中批量训练tfrecord数据(使用深度学习训练DMRI/DTI数据)

很多时候我们的数据是tfrecord格式的,或者由于数据本身太过复杂并且过于庞大,我们需要将数据转换成tfrecord格式并以batch的形式进行读取来节省大量的时间。于是,在keras下,我们如何训练来自tfrecord的数据呢?

2019-05-29 13:12:50 5458 24

原创 DTI(dwi)使用FSL做预处理及做TBSS处理流程(fsleyes查看结果)

预处理刚开始我用的数据初始文件是多个dcm格式的文件,当时我从格式转换、提取b0、 波脑、涡流、计算张量下来是没有问题的。后来我用dwi的文件(包含四维的.nii.gz、bvec、bval文件),用上面的流程发现中间有个文件生成不了,于是又找了别的方法才搞定。不过结果都是一样的,反正就是生成FA嘛。1.处理dcm格式文件格式转换: dcm2nii *.dcm提取b0: fslro...

2019-05-04 11:05:00 11384 22

原创 DPARSF关键字含义

官网教程这里先贴上官网上的指南,等我跑完流程再来挨个解释哈。以下是在MATLAB上安装好的DPARSF,另外安装了REST和SPM12。

2019-01-05 10:10:37 1182 1

空空如也

空空如也

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

TA关注的人

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