
AI
文章平均质量分 67
人工智能和FPGA AI技术
这个作者很懒,什么都没留下…
展开
-
yolo后处理中image[0, ...] = image_data.reshape(shapeIn[1:])的解析
先上一张图image[0, …] = image_data.reshape(shapeIn[1:])这句核心语句刚看到不理解,经查详述如下:image为numpy类型, 为shapeIn为turple类型image[0, …] 等同于image[0, : ]原创 2022-05-03 09:07:34 · 1146 阅读 · 0 评论 -
[Vivado 12-8300] Launch HLS failed
编译kv260时出现:经查证:WARNING: [Vivado 12-8222] Failed run(s) : ‘kv260_ispMipiRx_vcu_DP_v_frmbuf_wr_0_0_synth_1’semi-planar data.[Vivado 12-8300] Launch HLS failed!Vitis 2020.2On Linux run:export LD_LIBRARY_PATH=$PWD/Vivado/2020.2/tps/lnx64/python-3.8.3/原创 2022-01-20 23:01:45 · 1309 阅读 · 1 评论 -
Python从目录中取出所有图像文件名写入一个文本文件 write writelines
从目录中取出所有图像文件名写入一个文本文件在使用 write() 向文件中写入数据,需保证使用 open() 函数是以 r+、w、w+、a 或 a+ 的模式打开文件,否则执行 write() 函数会抛出 io.UnsupportedOperation 错误。import osimage_folder="./yolo"f = open("calib_data.txt", 'w+')listimage = [i for i in os.listdir(image_folder) if i.endswi原创 2022-01-14 20:26:46 · 475 阅读 · 0 评论 -
darknet yolov3 python 开发指南
DARKNET参考网页https://pjreddie.com/darknet/yolo/darknet转换keras h5https://gitee.com/huxiaoou/yolov3_keras?_from=gitee_searchjohn@john-wang:~/yolov3/yolov3_keras$ python3 convert.py yolov3.cfg yolov3.weights model_data/yolov3.h5john@john-wang:~/yolov3/yol原创 2021-10-06 16:55:00 · 307 阅读 · 0 评论 -
darknet yolov3 GPU设置及问题解决 和 darknet训练中输出参数avg等的含义
查看CUDA版本john@john-wang:~/yolov3/yolov3_mask_detect$ nvcc -V查看显卡john@john-wang:~/yolov3/yolov3_mask_detect$ nvidia-smi原创 2021-10-04 23:08:06 · 3648 阅读 · 0 评论 -
语义分割enet模型在ultra96开发板上的实现
ultra96开发板实现语义分割enet模型这是今年2020第四届全国大学生FPGA竞赛入选决赛的作品, 因现在忙于准备决赛,没时间整理插图,CSDN又不能直接上传DOC文档,请大家见谅!目 录一、硬件和软件环境 21.1 主开发板Ultra96v2 21.2 独立硬件系统连接图 31.3 安装脚本cityscapesscripts 41.4 生成金标TrainIdLabelImgs文件 4二、改变训练浮点模型 52.1 计算机侧项目目录 52.2 训练模型层改动 62.3 训练模型训原创 2020-11-28 09:20:33 · 1979 阅读 · 3 评论 -
DenseNet和Yolo模型在ultra96开发板上的实现
find -print0表示在find的每一个结果之后加一个NULL字符,而不是默认加一个换行符。然后xargs -0表示xargs用NULL来作为分隔符。https://www.cnblogs.com/liuyihua1992/p/9689314.htmljohn@john-wang:~/Vitis-AI_1.2/YOLOv3$ sudo apt-get install dos2unixsudo apt-get install libopencv-devjohn@john-wang:~/Viti.原创 2020-11-28 09:14:23 · 3799 阅读 · 2 评论 -
DPU-PYNQ Ultra96v2安装使用说明
由于不能直接上传word文档,本文档中大量的图片我没有时间上传,待有空时再补图片,请谅解!DPU-PYNQ Ultra96v2安装使用说明目 录预备知识 3Execution Model 3Host Program Build Process 5FPGA Binary Build Process 5第一部分 安装例程 6六步安装 6SD扩容 6网络连通 7通信诊断 9切换镜像源 12运行jupyter 14输入文件和库文件(pynq-dpu/dpu_resnet50_0.elf,原创 2020-11-03 19:42:36 · 4368 阅读 · 5 评论 -
Caffe简单例程,图像处理,Netscope可视化方法
一个简单的caffe网络name: "convolution"input: "data"input_dim: 1input_dim: 1input_dim: 100input_dim: 100layer {name: "conv"type: "Convolution"bottom: "data"top: "conv"convolution_param {num_output: 2kernel_size: 5stride: 1weight_filler {type: "gau原创 2020-10-07 09:18:01 · 2642 阅读 · 0 评论 -
Tensorflow官网例程学习记录 图片的四种显示方式 数据加强
print(image[0].shape)print(np.max(augmented_image[0],1).shape)两种显示方式plt.imshow(augmented_image[0].numpy().astype(“uint8”))plt.imshow(augmented_image[0] / 255))(160, 160, 3)(160, 3)np.max(a,1)np.argmax(a, 1)When you set layer.trainable = False, the原创 2020-09-15 21:29:04 · 5911 阅读 · 0 评论 -
数据集获取方式和数据加强方式
用minist.load.data()读取numpy数据直接送入model(x_train, y_train), (x_test, y_test) = mnist.load_data()x_train, x_test = x_train / 255.0, x_test / 255.0定义输入维数model = tf.keras.models.Sequential([tf.keras.layers.Flatten(input_shape=(28, 28)),tf.keras.layers.Dens原创 2020-09-15 17:41:18 · 5061 阅读 · 0 评论 -
PyTorch三种保存方法 模型保存和继续训练的完整例程
pytorch数据加载、模型保存及加载https://blog.csdn.net/FPGATOM/article/details/85337469https://www.jb51.net/article/167892.htmtorch.train() torch.eval()https://blog.csdn.net/weixin_43593330/article/details/103365671以下是三种方式,作者亲自试过# torch.save(net.state_dict(), 'net原创 2020-08-24 11:13:34 · 5749 阅读 · 1 评论 -
PyTorch CUDA安装 PyTorch入门知识和例程
https://www.cnblogs.com/moon3/p/12199588.html查看CUDA版本john@john-wang:~$ cat /usr/local/cuda/version.txtCUDA Version 10.0.130john@john-wang:~$ nvcc -Vnvcc: NVIDIA ® Cuda compiler driverCopyright © 2005-2017 NVIDIA CorporationBuilt on Fri_Nov__3_21:07:原创 2020-08-20 22:49:06 · 1032 阅读 · 0 评论 -
ubuntu虚拟环境virtualenv, tf-nightly, efficientnet安装
因要用到efficientnet模型,现在这个模型只存在在tf-nightly版本中, 又不想破坏主环境,因此采用虚拟环境virtualenv来安装,而不是采用conda create.sudo apt-get install python-virtualenvvirtualenv -p /usr/bin/python3 tf2进入envsource ~/tf2/bin/activate查看虚拟环境下安装的所有的包 pip list查看虚拟环境重通过pip安装的包pip freezepip原创 2020-08-19 16:52:06 · 1187 阅读 · 0 评论 -
机器学习Highway网络结构
详解深度学习之经典网络架构(六):ResNet 两代(ResNet v1和ResNet v2)_chenyuping333的博客-CSDN博客_resnet v2 https://blog.csdn.net/chenyuping333/article/details/82344334网络加深,梯度消失为什么随着网络层级越深,模型效果却变差了呢?下图是一个简单神经网络图,由输入层、隐含层、输出层构成:回想一下神经网络反向传播的原理,先通过正向传播计算出结果output,然后与样本比较得出误差值E原创 2020-08-18 10:17:56 · 2054 阅读 · 0 评论 -
Ubuntu 18.04双系统,含GPU、Linux Docker、Vitis-AI、休眠省电、五笔,以及安装问题USB启动、左右手错位、cudnn bug、Tweak tool
输入diskmgmt.msc,按回车键名即可打开磁盘管理。F2进入Bios, 没有USB启动,中文无解,查外文• USB device is plugged in• F2 to BIOS• Switch to “Boot” and set “FastBoot” to Disabled• Switch to “Security” and set “Secure Boot Control” to Disabled• F10 to save and exit and immediately pres.原创 2020-08-18 09:39:17 · 1191 阅读 · 0 评论 -
激活函数ReLU、Leaky ReLU、tanh(双曲正切函数Hyperbolic tangent function)
深度学习的激活函数 :sigmoid、tanh、ReLU 、Leaky Relu、RReLU、softsign 、softplus - 程序员大本营 https://www.pianshen.com/article/6147380115/数学表达式: y = max(0, x) + leak*min(0,x)与 ReLu 相比 ,leak 给所有负值赋予一个非零斜率, leak是一个很小的常数 \large a_{i} ,这样保留了一些负轴的值,使得负轴的信息不会全部丢失)#leakyRelu原创 2020-08-17 16:15:01 · 3618 阅读 · 0 评论 -
DepthwiseConv2D和Conv2D详解
depthwise_conv2d和conv2d的不同之处在于conv2d在每一深度上卷积,然后求和,depthwise_conv2d卷积,不求和。[https://www.cnblogs.com/itmorn/p/11250371.html]depthwise_conv2d如下张量x和卷积核K进行depthwise_conv2d卷积结果为:import tensorflow as tf# [batch, in_height, in_width, in_channels]input =t原创 2020-08-17 15:52:49 · 20734 阅读 · 2 评论 -
keras中h5模型保存和恢复方法 DenseNetX的完整例程
https://blog.csdn.net/mcyJacky/article/details/88706164模型保存model.save(‘model.h5’) # HDF5文件,pip install h5pyh5模型恢复和继续训练下面可以可以通过load_model()方法,对保存的模型进行恢复或者可以对模型进行继续训练。具体如下:import numpy as npfrom keras.datasets import mnistfrom keras.utils import np_ut原创 2020-08-12 16:58:10 · 3345 阅读 · 0 评论 -
训练模型两种保存方式 saver& load
加上name值,方便在tensorboard里面查看def conv_layer(input, size_in, size_out, name=‘conv’):# 定义名字作用域with tf.name_scope(name):w = tf.Variable(tf.truncated_normal([5, 5, size_in, size_out], stddev=0.1), name=‘W’)b = tf.Variable(tf.constant(0.1, shape=[size_out]),原创 2020-08-11 15:41:34 · 4040 阅读 · 0 评论 -
tensorboard & tf.summary 知识点和使用说明
TensorBoardTensorFlow回调函数:tf.keras.callbacks.TensorBoardhttps://www.w3cschool.cn/tensorflow_python/tf_keras_callbacks_TensorBoard.htmltf.keras.callbacks.TensorBoard函数类 TensorBoard继承自:Callback定义在:tensorflow/python/keras/callbacks.py。此回调为TensorBoard编写原创 2020-08-11 15:35:48 · 1991 阅读 · 0 评论 -
model.fit_generato函数 回调函数ReduceLROnPlateau tf.keras.callbacks.ModelCheckpoint
fit_generator函数简介浅谈keras通过model.fit_generator训练模型(节省内存)https://www.jb51.net/article/188905.htmfit_generator(generator,steps_per_epoch=None,epochs=1,verbose=1,callbacks=None,validation_data=None,validation_steps=None,class_weight=None,max_queue_s原创 2020-08-10 17:21:31 · 1489 阅读 · 1 评论 -
tf.nn.conv2,cross_entropy,loss,sklearn.preprocessing,next_batch,truncated_normal,seed,shuffle,argmax
TensorBoard的使用https://blog.csdn.net/duanlianvip/article/details/98498826概述TensorBoard是一个可视化工具,它可以用来展示网络图、张量的指标变化、张量的分布情况等。特别是在训练网络的时候,我们可以设置不同的参数(比如:权重W、偏置B、卷积层数、全连接层数等),使用TensorBoader可以很直观的帮我们进行参数的选择。本系列文章一共四篇,由浅入深,以常见的Mnist数据集为实验对象,从实现最简单TensorBoard开原创 2020-08-08 11:57:23 · 328 阅读 · 0 评论 -
TopK排序三种办法的性能比较和sort()方法
排序三种办法的性能比较start = time.time()fo = open(resultname, “w”)task = n2cube.dpuCreateTask(kernel, 0)print("\n")height, width, channel, mean = preprocess.parameter(task, KERNEL_CONV_INPUT)#print(“outputMean = %f”%mean[0])for i in range(imagenumber):path =原创 2020-06-26 17:56:52 · 729 阅读 · 0 评论 -
第一部分 DPU on PYNQ Upgrading PYNQ - Install - Rebuild DPU Block and Models
DPU on PYNQThis repository holds the PYNQ DPU overlay. Specifically, the Vitis AI DPUis included in the accompanying bitstreams with example training and inferencenotebooks ready to run on PYNQ enabled platforms.Steps are also included to rebuild the d原创 2020-06-26 10:02:02 · 781 阅读 · 1 评论 -
Reset、clock、locked和dcm_locked之间的坑
Reset、clock、locked和dcm_locked之间的坑如果连locked, 并用再生的reset,petalinux-boot --qemu --prebuilt 3仿真可以通过, 但目标板boot会死掉,判断可能是因为时钟IP需要复位初始化工作,但reset又需要稳定的时钟,所以该循环会陷入死锁无解,时钟IP无法初始化进入工作状态。如下图错误设计:参考设计一:原DPU TR...原创 2020-05-04 08:08:00 · 3829 阅读 · 1 评论 -
含Wifi和DPU功能的Ultra96v2 Vitis AI Linux加速平台的设计与制作
我的这篇原创已发表在赛灵思公司官方网站https://mp.weixin.qq.com/s/KYz17drGhH2Ubl2WSgAkyg为节约整理上传的时间,我在这里就不重复花时间整理了,请大家移步阅读,不便之处,敬请原谅!...原创 2020-04-24 16:05:37 · 1532 阅读 · 0 评论 -
vivado中添加DPU IP核
Xilinx的平台技术是个新事物,其说明书要么是坑,要么指迷了路,PG338《Zynq DPU v3.2 DPU》虽然尽述DPU的使用方法,但对DPU如何引入却不提,下面带你入局先下载IP核https://github.com/Xilinx/Vitis-AI/tree/master/DPU-TRD/dpu_ip/dpu_eu_v3_2_0拷入你的计算机成功引入DPU核...原创 2020-04-15 10:25:40 · 6039 阅读 · 4 评论 -
利用DNNDK作AI DPU硬核加速-FPGA大赛获奖实例分析
这个项目是通过小车上安放Ultra96和摄像头,在行进过程中摄像头所摄入的目标和道路边缘进行识别,并通过WIFI完成与远端主机的通信与控制。Ultra96板通过USB摄像头采集图像信号,利用Ultra96强大的DNNDK IP神经网络处理能力进行目标识别。利用DNNDK 的 SSD神经网络硬件加速方案和先进的剪枝技术,在计算机上进行模型的选择、训练和验证。然后运用DNNDK IP将深度模型的浮点...原创 2020-04-08 22:32:29 · 2798 阅读 · 2 评论