python
韭菜钟
这个人很懒,懒得写简介
展开
-
图像增强库imgaug的使用
官方例程 https://imgaug.readthedocs.io/en/latest/index.html简介 https://blog.csdn.net/limiyudianzi/article/details/86497305在使用ElasticTransformation时,可能会报一个shapely的错误,解决办法如下:https://blog.csdn.net/czp_374/article/details/85919577conda install -c conda-forge sh原创 2021-07-30 14:05:59 · 168 阅读 · 0 评论 -
Pytorch导出torchvision的分类检测模型(alexnext,resnet,vgg等)为onnx
参考:https://blog.csdn.net/u011622208/article/details/110240126https://blog.csdn.net/github_28260175/article/details/103436020torchvision的分类模型的output为未归一化的数组,用起来会不是很方便,加上个softmax会方便很多,因此,可以自己创建个“壳”,实现自定义的操作:MyUtil.py...# 自定义的的AdaptiveAvgPool2d,但是不符合tr原创 2021-07-29 14:16:00 · 561 阅读 · 0 评论 -
PySide使用QVariant
参考:https://stackoverflow.com/questions/64631653/pyside-2-qvariantmap-signal-qt5-15-qt5-12之前在Python这边用Qt的话,用的是PyQt。但是后来看到一些资料说PyQt是不能用于商业用途的,所以需要改成用PySide。PySide和PyQt的用法大部分一样,但是有些语法不一样。这里给出个例子,简单介绍Signal、Slot、QVariant的使用:from PySide2.QtCore import QObje原创 2021-07-26 16:04:28 · 1202 阅读 · 0 评论 -
Python中执行耗时操作(多线程、多进程)
python的多线程其实不是真正的多线程,只是个并发而已。一旦执行真正的耗时操作(非sleep操作),就会卡住。要实现真正的多线程,有两个方法(暂时知道的):一、用多进程参考:多线程,多进程的用法进程间通讯但是,利用多进程的方式,交换数据会很麻烦(需要用到队列、管道等方式)。二、用QThread。幸亏,有个简单的方式,那就是用Qt的QThread。QThread实现的多线程,从目前的的测试来看,的确是起到了多线程的作用。from PyQt5.QtCore import QThread原创 2021-07-23 14:24:08 · 1835 阅读 · 1 评论 -
python创建httpserver,并处理get、post请求
参考:https://blog.csdn.net/gujing001/article/details/53152793/搭建一个简单的httpserver,用于测试数据通讯from http.server import HTTPServer, BaseHTTPRequestHandlerimport jsondata = {'result': 'this is a test'}host = ('localhost', 8888)class Resquest(BaseHTTPRequest原创 2021-07-22 13:29:00 · 13948 阅读 · 1 评论 -
pytorch的torchvision直接加载本地预训练模型,不从网络下载
参考:https://blog.csdn.net/thiefun2020/article/details/108592916在使用torchvision的模型时,一般第一次使用都需要从网络下载模型。但是要是网络较慢,而且我自己有了这个预训练模型(从别人的电脑拷贝的),那就直接加载就行。一般来说只要设置pretrained=False就可以了,但是对于一些有backbond的模型,还需要把backbone的pretrained=False。然后加载模型就行(backbond的模型权重一并包含在里面了)原创 2021-07-22 11:25:44 · 2572 阅读 · 0 评论 -
QProcess调用python
参考:https://blog.csdn.net/weixin_31165655/article/details/112933961通过QProcess调用conda中的python QProcess p; //python 的路径 QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); env.insert("PYTHONPATH", "D:/ProgramData/Anacond原创 2021-07-20 17:51:56 · 2361 阅读 · 4 评论 -
windows下,在Qt中通过c++调用anaconda中的python,使用pytorch
由于项目需求,需要在Qt中调用anaconda中的pytorch进行训练等操作,经过查找资料以及测试,成功实现该需求,具体流程如下(前提是已经在anaconda中正确安装好pytorch):我的pytorch开发环境在:D:\ProgramData\Anaconda3\envs\pytorch_cuda1.添加环境变量将3个路径加到path中去,参考这个2.在Qt工程的pro文件中引入python 的c++库的头文件以及库:INCLUDEPATH += $$quote(D:\ProgramDa原创 2021-06-01 14:02:20 · 2665 阅读 · 0 评论 -
windows下Jupyter设置conda中的python解析器
参考:https://www.cnblogs.com/yh-blog/p/12587013.html在控制台执行jupyter kernelspec list在输出的目录中找到这个文件打开,编辑一下,设置好你的python路径:然后就OK了。原创 2021-07-15 10:39:44 · 123 阅读 · 0 评论 -
利用QtRemoteObjects在C++与Python之间通讯
资料:https://github.com/PyQt5/PyQt/tree/master/QtRemoteObjects由于项目要求,需要在python程序与c++程序之间通讯。经过取舍,觉得还是直接用QtRemoteObjects来实现这个通讯会比较合适。QtRemoteObjects(以下简称QtRO)是一个qt的用于进程间通讯的模块。用QtRO通讯的两个进程(程序)可以在同一台电脑上,也可以在不同的电脑上(不同的电脑时,只需要在QRemoteObjectHost的url上修改一下就行)。QtR原创 2021-07-13 16:45:59 · 765 阅读 · 0 评论 -
python编译pyd及发布exe
参考:http://c.biancheng.net/view/2690.html在编写完python程序之后,我们假如想让别人使用我们这个程序。一般来说,是直接把python文件提供给别人,让别人在他自己的python环境中执行。但是假如别人的电脑没装python,而且又是离线,无法安装该程序(或者说是脚本?)所依赖的一堆东西呢?有没有办法可以直接发布exe+dll就可以让别人开箱即用我们的程序呢?有,用 PyInstaller就可以了。详细的介绍可以看前面的链接。假如像直接发布一个exe,可原创 2021-07-09 16:24:45 · 689 阅读 · 2 评论 -
python 使用问题集锦
1.json加载中文文件或者中文内容出现错误。参考https://blog.csdn.net/weixin_40950781/article/details/105639301在open的时候指定编码格式。jsonObj = json.load(open("packBox/Annotations/210605135056C8[盒皮纸缺陷1].json", encoding="utf-8"))imgWidth = jsonObj['imageWidth']imgHeight = jsonObj['原创 2021-06-30 13:17:27 · 72 阅读 · 0 评论