- 博客(435)
- 资源 (21)
- 问答 (1)
- 收藏
- 关注
原创 使用paddlepaddle进行手写数字识别
导读MNIST手写数字数据集作为深度学习入门的数据集是我们经常都会使用到的,包含了0~9共10个数字类别的图片,每张图片的大小为28X28,一共包含了60000张训练集图片和10000张测试集图片。使用PaddlePadlle进行手写数字识别导包import paddlefrom paddle.vision.transforms import Normalize加载MNIST数据集#数据的归一化处理transform = Normalize(mean=[127.5],std=[12
2022-02-09 23:35:24 3699 1
原创 python使用selenium打开chrome浏览器时带用户登录信息
导读我们在使用selenium打开google浏览器的时候,默认打开的是一个新的浏览器窗口,而且里面不带有任何的浏览器缓存信息。当,我们想要爬取某个网站信息或者做某些操作的时候就需要自己再去模拟登陆
2022-02-07 21:45:49 11788 4
原创 pip install dlib报C++11 is required to use dlib
错误原因在使用pip install dlib安装dlib的时候报错,错误的详细信息如下ERROR: Command errored out with exit status 1:command: /root/miniconda3/envs/cv_1/bin/python -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-jpjqw_8i/dlib_a6680215d7d4421581b7b499
2022-01-29 11:42:53 4211
原创 opencv常用的形态学操作
导读在使用opencv做图像处理的时候,我们经常会需要用到一些基础的图像形态学操作腐蚀、膨胀。通过这些基本的形态学操作我们可以实现去噪以及图像的切割等。形态学变换是基于图像形状的基础变换,它只能在二值图像上做处理。形态学操作需要两个输入,输入图像和structuring element或kernel,structuring element和kernel决定我们做何种形态学处理的操作。腐蚀和膨胀是形态学处理的基础操作,而开运算和闭运算是基于腐蚀和膨胀的变种操作。下面我们就介绍一下如何在实际中应用这些操作
2021-12-07 22:37:09 6847 5
原创 imgwarp.cpp:3143: error: (-215:Assertion failed) _src.total() > 0 in function ‘warpPerspective‘
错误缘由在使用opencv做透视变换的时候报error: (-215:Assertion failed) _src.total() > 0 in function 'warpPerspective',错误的详细信息如下cv2.error: OpenCV(4.4.0) /tmp/pip-req-build-dglzv4yn/opencv/modules/imgproc/src/imgwarp.cpp:3143: error: (-215:Assertion failed) _src.total()
2021-12-01 23:00:43 5122
原创 python关闭print的输出信息
import sysprint("1111111")#关闭print的输出sys.stdout = open(os.devnull, 'w')print("2222222")#打开print的输出sys.stdout = sys.__stdout__print("3333333")
2021-11-30 15:51:59 9819
原创 windows bat启动程序和监控程序自启动
导读我们需要监控某个服务进程是否启动,如果服务奔溃了就自动重启,这里以redis为例介绍一下如何在windows上写这种bat文件,来监控服务的状态监控服务的运行状态脚本启动redisredis.bat文件的内容如下@echo offrem 隐藏redis启动后的cmd窗口if "%1" == "h" goto beginmshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&
2021-11-30 15:41:51 4412
原创 python获取mq队列数据报Queue.declare: (406) PRECONDITION_FAILED - inequivalent arg ‘x-max-priority‘
缘由使用kombu读取队列数据的时候报如下错误amqp.exceptions.PreconditionFailed: Queue.declare: (406) PRECONDITION_FAILED - inequivalent arg ‘x-max-priority’ for queue ‘douyin.pg.logo.ready’ in vhost ‘douyin_pggolden’: received none but current is the value ‘5’ of type ‘sign
2021-11-26 17:27:06 2929
原创 python OpenCV给视频去除水印
导读import cv2# 创建读取视频的类capture = cv2.VideoCapture("mapping.mp4")# 得到视频的高度height = capture.get(cv2.CAP_PROP_FRAME_HEIGHT)# 得到视频的宽度width = capture.get(cv2.CAP_PROP_FRAME_WIDTH)# 得到视频的帧数count = capture.get(cv2.CAP_PROP_FRAME_COUNT)# 得到视频的帧速fps = cap
2021-11-26 14:59:34 8611 1
原创 node上传文件到FTP服务器报Error: Timed out while making data connection
错误原因在局域网内搭建了一个FTP服务器,因为项目使用node-ftp封装的一个FTP文件上传和下载服务,在上传文件的时候报如下错误:(node:29020) UnhandledPromiseRejectionWarning: Error: Timed out while making data connectionat Timeout. (D:\git project\nexrender\packages\nexrender-provider-ftp\node_modules\ftp\lib\co
2021-11-19 11:17:54 2043
原创 loss乘以100等价于learning rate乘以100?
导读看到这个问题的时候,可能你会很直观的认为是等价的,其实等不等价这个应该取决于在更新参数时所选择的优化算法。因为无论是缩放loss还是learning rate最终的影响都是对更新参数时偏移量(Δ\DeltaΔ)的影响,而不同的优化算法会导致这个偏移量存在差别,下面我们来讨论一下不同优化算法之间的差别。SGD梯度下降优化算法,也是最常见的一种优化算法,公式如下:θ=θ−η∗ΔθJ(θ)\theta = \theta - \eta * \Delta_{\theta}J(\theta)θ=θ−η
2021-10-24 22:45:30 4006
原创 Python报mongod: error while loading shared libraries: libcrypto.so.1.1
导读使用Python安装完mongodb之后,在执行mongod报如下错误mongod: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory解决办法找到使用的虚拟环境,例如我的虚拟环境的名称叫torch,使用下面的命令查看环境下是否存在libcrypto.so.1.1文件#切换到lib目录下cd /root/anaco
2021-09-12 23:21:04 14952
原创 TensorRT报Cuda initialization failure with error
起因在使用TensorRT将onnx模型转换为engine时报[TRT] Cuda initialization failure with error详细错误信息如下[TensorRT] ERROR: CUDA initialization failure with error 222. Please check your CUDA installation: http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html问
2021-09-03 16:07:57 11028 3
原创 只需要5秒就能克隆出你的声音
导读只需要一段5秒钟的录音,就能将其他的文字转换成你的声音。Real-Time-Voice-Cloning该项目目前在git上以及接近30k的星,作者将克隆后的效果已经上传到youtube演示视频。遗憾的是这个项目只支持英文。最近从这个项目中发展了一个中文的分支Realtime-Voice-Clone-Chinese,作者已经在效果上传到了bilibili演示视频下面我就教大家如何在你的电脑上使用这个项目运行环境系统:Windows、LinuxPython版本:3.7+pytorch版本:
2021-08-28 11:14:20 19365 28
原创 TensorRT onnx转engine报Assertion failed: dims.nbDims == 4 || dims.nbDims == 5
错误信息在使用TensorRT将onnx转为engine的时候报错,错误信息如下[08/27/2021-15:27:08] [I] === Model Options ===[08/27/2021-15:27:08] [I] Format: ONNX[08/27/2021-15:27:08] [I] Model: glintr100.onnx[08/27/2021-15:27:08] [I] Output:[08/27/2021-15:27:08] [I] === Build Options =
2021-08-27 15:38:54 2264
原创 python通过url获取文件名和文件的后缀
导读很多时候我们需要获取url的文件名以及文件的后缀,方便我们来处理数据。获取url的后缀名称from urllib.parse import urlparse# url = "http://photographs.500px.com/kyle/09-09-201315-47-571378756077.jpg"# url = "https://img1.baidu.com/it/u=1845235267,872385921&fm=26&fmt=auto&gp=0.jpg"
2021-08-13 10:52:29 4925 1
原创 微软开源的机器学习入门课程
文章目录欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编
2021-08-04 22:18:03 536
原创 什么?Python的多进程居然比单进程慢?
导读很多时候,当我们需要使用Python来处理大量的数据的时候,为了缩短处理的时间,我们会使用多线程或多进程来并行处理任务。由于Python全局解释器锁的存在,导致在执行多线程的时候实际上只有一个线程在运行,这使得多核CPU无法发挥它真正的效率。而多进程就可以很好的解决这个问题。如果你打开多进程的姿势不对,会导致它比单进程更慢,下面我们就来看看如何正确的打开多进程。实验环境系统:Ubuntu16.04Python:3.7示例这个示例是基于Python对图片做一个预处理,以便于后面神经网络使
2021-08-02 22:17:49 10525
原创 redis.exceptions.ResponseError: unknown command `KEYS`
错误信息在使用python的查询redis里面所有的键信息时报错redis.exceptions.ResponseError: unknown command `KEYS`, with args beginning with: `*`, 代码如下import redispool = redis.ConnectionPool(host='127.0,0.1', port=6379, db=0, password='123456')r = redis.StrictRedis(connection
2021-07-21 18:05:12 4044
原创 Ubuntu、CentOS、macOS测试服务器上传和下载速度
导读通过speedtest我们可以方便的电脑的上传和下载速度。除此之外,我们还可以通过speedtest-cli来测试网速。macOSbrew tap teamookla/speedtestbrew update# Example how to remove conflicting or old versions using brew# brew uninstall speedtest --forcebrew install speedtest --forceUbuntu## If mi
2021-07-21 15:49:07 1420
原创 pip install报python setup.py egg_info Check the logs for full command output.
错误信息pip install nvidia-pyindexLooking in indexes: https://pypi.tuna.tsinghua.edu.cn/simpleProcessing ./nvidia-pyindex-1.0.3.tar.gz ERROR: Command errored out with exit status 1: command: /root/anaconda3/envs/cv_1/bin/python -c 'import io, os, s
2021-07-20 11:47:11 7154
原创 torch里面的Tensor、as_tensor、tensor以及from_numpy究竟有何区别?
导读在使用pytorch的时候我们经常会用到将numpy array转为tensor,以及将tensor转为numpy array的情况。pytroch内置了几种不同的方法可以方便我们将numpy array转换称为tensor,那么这些方法之间究竟有何异同呢?下面我们就来介绍一下实践import torchimport numpy as np#创建一个numpy array的数组array = np.array([1,2,3,4])#将numpy array转换为torch tensor
2021-07-05 18:51:24 5830 3
原创 聊聊特征分解和SVD分解
矩阵分解矩阵分解(decomposition,factorization):将矩阵拆分为多个矩阵的乘积的运算。矩阵的分解包括以下几种:特征分解SVD分解PCAQR分解LU分解极分解矩阵分解在数据压缩、推荐系统以及NLP等都有着比较广泛的应用。特征分解特征分解(eigendecomposition):能够将矩阵分解成一组特征向量和特征值,是一种使用最为广泛的矩阵分解。并不是所有的矩阵能够使用矩阵分解,只有方阵(矩阵的行数等于列数)才有特征分解,我们可以使用下面的数学形式来表示特征分解:
2021-07-04 11:37:21 2187 3
原创 triton server报The engine plan file is generated on an incompatible device
错误信息在启动triton inference server的时候报I0701 02:42:42.028366 1 cuda_memory_manager.cc:103] CUDA memory pool is created on device 0 with size 67108864I0701 02:42:42.031240 1 model_repository_manager.cc:1065] loading: resnet152:1E0701 02:43:00.935893 1 loggin
2021-07-01 11:03:40 4024
原创 triton-inference-server报Error details: model expected the shape of dimension 0 to be between
错误信息描述在使用perf_client对模型的性能做基准测试的时候报了如下错误./perf_client -m resnet152 -u 127.0.0.1:8001 -i grpc system --concurrency-range 4*** Measurement Settings *** Batch size: 1 Measurement window: 5000 msec Using synchronous calls for inference Stabilizing u
2021-06-30 10:56:22 1454
原创 triton-inference-server启动报Internal - failed to load all models
启动nvidia-serverdocker run --gpus=1 --rm -p 8000:8000 -p 8001:8001 -p 8002:8002 -v /full_path/deploy/models/:/models nvcr.io/nvidia/tritonserver:21.03-py3 tritonserver --model-repository=/modelstrtexec --loadEngine=resnet152.engine#输出信息[06/25/2021-22.
2021-06-26 22:24:40 7129 3
原创 triton-inference-server启动报Invalid argument: unexpected inference
错误信息在启动tritonserver的时候报错,错误信息如下:I0625 14:41:46.915214 1 cuda_memory_manager.cc:103] CUDA memory pool is created on device 0 with size 67108864I0625 14:41:46.978097 1 model_repository_manager.cc:1065] loading: resnet152:1I0625 14:42:16.968665 1 plan_bac
2021-06-25 23:42:12 2054
原创 cvat启动成功之后无法访问
$ docker-compose up -d/root/anaconda3/lib/python3.5/site-packages/paramiko/transport.py:33: CryptographyDeprecationWarning: Python 3.5 support will be dropped in the next release of cryptography. Please upgrade your Python. from cryptography.hazmat.back
2021-06-21 21:49:12 4016
原创 sqllite插入numpy数组到数据库
https://stackoverflow.com/questions/18621513/python-insert-numpy-array-into-sqlite3-database
2021-06-20 18:36:46 1131 1
原创 sqllite根据条件一次查询多条数据
https://stackoverflow.com/questions/5766230/select-from-sqlite-table-where-rowid-in-list-using-python-sqlite3-db-api-2-0
2021-06-20 18:09:10 7651 1
原创 找出数组中非重复元素的下标
https://stackoverflow.com/questions/432112/is-there-a-numpy-function-to-return-the-first-index-of-something-in-an-array
2021-06-18 22:24:09 594 1
原创 标量、向量、矩阵、张量之间的区别和联系
文章目录前言标量向量矩阵张量标量向量矩阵张量之间的联系线性代数常用的运算一、向量的运算1.点积代数意义几何意义2.外积3.向量的范数二、矩阵的运算1 .转置2.矩阵的范数3.常见的矩阵4.矩阵的乘法5.矩阵哈达马积6.克罗内克积前言深度学习的表现之所以能够超过传统的机器学习算法离不开神经网络,然而神经网络最基本的数据结构就是向量和矩阵,神经网络的输入是向量,然后通过每个矩阵对向量进行线性变换,再经过激活函数的非线性变换,通过层层计算最终使得损失函数的最小化,完成模型的训练。所以要想学好深度学习,对这些基
2021-06-10 22:47:22 28262 10
原创 git push nothing to commit, working tree clean
错误原因在使用git push的时候报Your branch is up to date with ‘origin/master’. nothing to commit, working tree clean解决办法rm -rf .git/git initgit remote add origin https://repository.remote.url(地址改成你git clone的地址)git commit -m “Commit message”git push -f origin m
2021-05-27 17:11:56 4916 1
原创 flask logging不能写入到日志文件
错误原因在使用logging记录flask日志的时候,发现INFO级别的日志始终写入不进去,代码如下import flask# 实例化 flaskapp = flask.Flask(__name__)if __name__ == '__main__': applogger = app.logger file_handler = FileHandler("error.log") file_handler.setLevel(logging.DEBUG) applo
2021-05-25 14:39:53 2607
原创 detectron2报AttributeError: Attribute ‘evaluator_type‘ does not exist in the metadata of dataset
错误分析AttributeError: Attribute ‘evaluator_type’ does not exist in the metadata of dataset ‘firekp_val’. Available keys are dict_keys([‘name’, ‘thing_classes’]).在使用detectron2训练模型的时候报了上面的错误,错误发生在使用验证集评估模型性能的时候。错误原因detectron2在计算模型的时候会选择一种评估的方法,如果你在Metada
2021-05-11 17:29:45 1600
原创 实现人脸识别APP(二)
导读上一篇文章介绍了人脸识别组成模块,这篇文章主要介绍一下如何来实现一个人脸识别应用,代码我也开源了,在文章最后有开源地址项目结构这个项目主要实现了人脸检测和人脸识别两个模块,人脸检测是基于retinaface模型,人脸识别是基于insightface实现的。整个的人脸识别项目的结构和之前的图像分类是一样的,这里就不重复介绍了。face_jni.cpp:JNI接口,结合了人脸检测和人脸识别函数,提供给java调用recognition.cpp:封装了人脸识别函数retinaFace.cpp:
2021-05-05 23:51:46 1045 5
原创 实现人脸识别APP(一)
导读前面我们介绍了如何使用ncnn来构建一个基于mobilenet的图像分类应用,通过这个项目大家已经熟悉在移动端上部署深度学习模型的整个流程以及每个步骤。接下来,我们来部署一个稍微复杂点项目,教你如何在手机上来实现一个人脸识别应用。这个应用由两个模型组成,由人脸检测和人脸识别模型组成,我们这里实现的只是一个simple版的。一个人脸识别应用除了人脸检测和人脸识别之外还包括活体检测、姿态检测、质量评估等模块。如果大家有兴趣,后期可以在我的项目上进行扩展现在人脸识别的应用已经随处可见了,刷脸支付、登录、
2021-05-05 21:06:49 2861 2
原创 在Android上部署深度学习模型之apk的编译(九)
导读上一篇文章中,我们已经实现了按钮的功能,并且通过CPU和GPU来调用JNI里面的函数来预测图片,这篇文章就教大家如何来编译apk,并且将编译出来的apk文件安装到手机里。Android手机调试Android studio提供了两种方式来调试,一种是通过Android模拟器,另一种是使用真机来调试。这里我们使用真机来调试打开手机的开发者模式不同的机型会略有差别,具体大家可以百度,我这里主要介绍华为手机打开开发者模式的方法,打开设置–>关于手机(滑到最下面)–>点击版本号,如下图所示
2021-05-05 15:43:47 607
原创 在Android上部署深度学习模型之按钮功能实现(八)
导读上篇文章我们介绍了Android UI设计的相关知识,这篇文章我们来看看如何来实现这些按钮的功能。按钮功能实现在我们启动APP的时候会执行MainActivity.java中的代码,文件路径如下创建全局变量和图片识别对象定义控件的全局变量用来保存信息,并且创建一个图片识别对象 private static final int SELECT_IMAGE = 1; //结果展示控件 private TextView infoResult; //图片展示控件
2021-05-05 14:42:57 349
原创 在Android上部署深度学习模型之UI设计(七)
导读前面介绍了一些Android相关的配置文件,这篇文章我们主要来介绍一下Android UI设计相关的知识,如何来设计界UI。Android的布局Android的UI主要是利用布局结合控件来设计出展示给用户的UI,Android中常用的布局主要有LinearLayout(线性布局)、RelativeLayout(相对布局)、FrameLayout(帧布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局)、GridLayout(网格布局)。控件主要包括有文本控件、按钮控
2021-05-05 12:11:47 614
机器学习常用数据集(iris、wine、abalone)
2018-06-06
imaging.jar
2017-04-02
zxing cpp lib
2017-03-05
ListView中因layout_height是wrap_content而引发的问题
2018-06-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人