argparse

openmv caffe专栏 1

醉酒当歌 提交于 2020-05-02 14:38:35
本专栏参考的原作者文章声明如下。 PS:本专栏对原作者的文章存在适当的修改与补充,使之更适合本作者所阐述的训练要求!如有侵权,请联系13512076879@163.com。 ———————————————— 版权声明:本文为CSDN博主「欣欣以向荣」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接: https://blog.csdn.net/qq_37783617/article/details/96866163 ———————————————— 1. caffe框架下openmv的训练步骤 目前 OPenMV 只提供Caffe模型到network网络的转换,未来可能会支持TensorFlow,但目前不行。通过Caffe框架学习,我们最终的目标肯定是得到 ******.network 的网络库文件 训练网络的主要步骤如下: 配置环境,安装Caffe 采集数据集 训练网络 量化模型 将模型转换为二进制格式 在OPenMV上部署模型 运行网络 故障排除 2.caffe环境的搭建(以本文环境为例介绍) windows 10 python 2.7 pycharm vs2013 openmv cam h4 openmv ide 3.vs2013 编译caffe 本专题请参考我的另一篇文章: https://www.cnblogs.com

自定义shell命令--闪烁的字母(PIL实现)

放肆的年华 提交于 2020-04-28 04:44:08
之前看到shell命令行,有人写过漫天下字母的cmatrix,想自己动手用python写一个类似,但是比较有自己风格的shell屏保 大致效果如下: 制作这个的大体思路比较简单: 1.利用python的PIL的库,进行图像转换屏幕字母的绘制   2.运行此程序,作为一个命令使用 先说第一步: 以下是所需要的库:PIL用于绘图,argparse用于给python程序提供入口参数,time用于每个图片的切换间隔 1 from PIL import Image 2 import argparse 3 import time 下面添加所需要的入口参数:这里width,height就是屏幕的宽高 1 parser = argparse.ArgumentParser() 2 3 parser.add_argument( ' file ' ) # input file 4 parser.add_argument( ' --width ' , type = int ,default = 150) # output_string width 5 parser.add_argument( ' --height ' , type = int , default = 48) # output_string height 6 7 # get args 8 args = parser.parse_args()

Python 实现色情图片识别

一世执手 提交于 2020-04-24 02:59:34
不管你是出于什么目的点进来的,首先你要知道,这是一个正经的教程……╭(╯^╰)╮ 今天要介绍的项目是用 Python 制作一个鉴黄程序,它可以识别一张图片是否为色情图片。 内容出自课程 ——「Python 实现色情图片识别」,完全免费,欢迎大家来实验楼亲手操作一遍~ Python 实现色情图片识别 ​ www.shiyanlou.com 项目名称: 【Python3 色情图片识别】 项目简介: 该项目使用 Python3 去识别图片是否为色情图片,会使用到 PIL 这个图像处理库,会编写算法来完成对划分图像的皮肤区域。 涉及知识点: Python 3 的模块的安装 Python 3 基础知识 肤色像素检测与皮肤区域划分算法 Pillow 模块的使用 argparse 模块的使用 效果展示: 程序原理: 根据颜色(肤色)找出图片中皮肤的区域,然后通过一些条件判断是否为色情图片。 程序的关键步骤如下: 遍历每个像素,检测像素颜色是否为肤色 将相邻的肤色像素归为一个皮肤区域,得到若干个皮肤区域 剔除像素数量极少的皮肤区域 我们定义非色情图片的判定规则如下(满足任意一个判定为真): 皮肤区域的个数小于 3 个 皮肤区域的像素与图像所有像素的比值小于 15% 最大皮肤区域小于总皮肤面积的 45% 皮肤区域数量超过 60 个 这些规则你可以尝试更改,直到程序效果让你满意为止

语义分割丨PSPNet源码解析「训练阶段」

依然范特西╮ 提交于 2020-04-22 04:53:02
引言 之前一段时间在参与语义分割的项目,最近有时间了,正好把这段时间的所学总结一下。 在代码上,语义分割的框架会比目标检测简单很多,但其中也涉及了很多细节。在这篇文章中,我以PSPNet为例,解读一下语义分割框架的代码。搞清楚一个框架后,再看别人的框架都是大同小异。 工程来自 https://github.com/speedinghzl/pytorch-segmentation-toolbox 框架中一个非常重要的部分是evaluate.py,即测试阶段。但由于篇幅较长,我将另开一篇来阐述测试过程,本文关注训练过程。 整体框架 pytorch-segmentation-toolbox |— dataset 数据集相关 |— list 存放数据集的list |— datasets.py 数据集加载函数 |— libs 存放pytorch的op如bn |— networks 存放网络代码 |— deeplabv3.py |— pspnet.py |— utils 其他函数 |— criterion.py 损失计算 |— encoding.py 显存均匀 |— loss.py OHEM难例挖掘 |— utils.py colormap转换 |— evaluate.py 网络测试 |— run_local.sh 训练脚本 |— train.py 网络训练 train.py 网络训练主函数

mmdetection(一)安装及训练、测试VOC格式的数据

时间秒杀一切 提交于 2020-04-21 00:28:54
一、安装 https://github.com/open-mmlab/mmdetection/blob/master/docs/INSTALL.md 二、训练自己的数据  1、数据  mmdet的默认格式是coco的,这里就以voc格式为例,data下文件夹摆放位置如图 2、训练 (1)修改configs文件下的文件    可先复制一份,然后自己命名一下。比如retinanet_x101_64x4d_fpn_1x.py,修改的部分主要是dataset settings部分,这部分可直接参考 pascal_voc/faster_rcnn_r50_fpn_1x_voc0712.py(如下);还有一部分是修改该文件下的num_classes(类别数+1) # dataset settings dataset_type = ' VOCDataset ' data_root = ' data/VOCdevkit/ ' img_norm_cfg = dict( mean =[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb= True) train_pipeline = [ dict(type = ' LoadImageFromFile ' ), dict(type = ' LoadAnnotations ' ,

10个超有趣的Python项目,你会哪个?

让人想犯罪 __ 提交于 2020-04-20 13:37:39
前言: Python可谓是现在很多人正在学或者想学的一个脚本语言了,提到学习自然就少不了拿项目练手,可是一般的项目根本提不起兴趣嘛,这10个项目可是非常有趣的,不信你看看。 【Python 图片转字符画】 用 50 行 Python 代码完成图片转字符画小工具。通过实验将学习到 Linux 命令行操作,Python 基础,pillow 库的使用,argparse 库的使用。 效果图 【使用 Python 生成分形图片】 这里特别注意:不管你是为了Python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的Python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教! 用Python Turtle 模块,通过画出分形树(Fractal tree),科赫雪花曲线(Koch snowflake)和龙形曲线(Dragon curve)这三种曲线来加强对递归的认识。 效果图一 【Python3 色情图片识别】 使用 Python3 去识别图片是否为色情图片,我们会使用到 PIL 这个图像处理库,会编写算法来划分图像的皮肤区域。其中涉及到Python 3 基础知识,肤色像素检测与皮肤区域划分算法,Pillow及argparse的使用。 效果图一

如何批量修改文件后缀名,python来帮你

有些话、适合烂在心里 提交于 2020-04-16 13:03:07
【推荐阅读】微服务还能火多久?>>> 前言 文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun 例子卡片1:批量修改文件后缀 本例子使用Python的os模块和 argparse模块,将工作目录work_dir下所有后缀名为old_ext的文件修改为后缀名为new_ext 通过本例子,大家将会大概清楚argparse模块的主要用法。 1 导入模块 import argparse import os 2 定义脚本参数 3 后缀批量重命名 4 实现main函数 如果使用Pycharm,直接在configuration界面配置即可,如果使用vs code,可在launch.json文件提前设置好参数: 5 直接调用 如果提前设置好了参数,则直接执行 batch_file_rename.py 如果未设置三个参数,需要在命令行这么传入: batch_file_rename.py a py txt 如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。获取方式,私信小编 “ 资料 ”

How to take two positional arguments when optinal isn't set in argparse

二次信任 提交于 2020-04-16 05:47:10
问题 I want to write a argparse command that needs two postional arguments when I don't set a optional argument. In my case it's like I want to call it with two necessary parameters but when I say python3 test.py -gui I want that you don't need this two arguments, because then you are using the gui. Thx 回答1: This is what I was proposing in the comments: import argparse parser = argparse.ArgumentParser() parser.add_argument('--gui', action='store_true', help="use GUI") parser.add_argument('args',

python框架

有些话、适合烂在心里 提交于 2020-03-31 06:44:51
Argparse Tutorial argparse是参数解析工具,它能识别并解析命令行传来的参数,也能在参数不正确的时候输出帮助信息。 先来了解几个概念: positional 表示位置参数,也就是必须按顺序给出的,比如mv命令就需要两个这样的参数,且规定了顺序的。 optional 表示可选参数,就是可有可无的都不影响程序运行的。 使用方法: import argparse parser = argparse.ArgumentParser() # 取得一个对象 parser.parse_args() # 开始分析参数 不过上面的代码并不能很好的工作,需要指明你的程序需要哪些参数,参数的类型,再定义些帮助信息以反馈给程序使用者。下面定义一个 positional 参数echo: import argparse parser = argparse.ArgumentParser() parser.add_argument("echo") # here args = parser.parse_args() print args.echo # here 这段代码告诉parser我们需要一个位置参数 echo ,取的时候就是 args.echo 就可以了。打印帮助信息的结果是这样的: $./test.py -h usage: test.py [-h] echo positional

IF Statements that will call different functions with argparse

江枫思渺然 提交于 2020-03-25 21:05:11
问题 I really dont think what I'm asking for is difficult but I can't find anything that helps without it talking about integers or different kind of arguments. I just want to call different functions using argparse. I want to call either the SHC updater, HCM, or Cloud. Right now it does all 3. I need if statements. if __name__ == "__main__": def _msg(updated): return "was updated" if updated else "already up-to-date" HCM_Updater = HCM() updated = HCM_Updater.update() print("HCM {}.\n".format(_msg