python实现图片筛选程序


Posted in Python onOctober 24, 2018

今天因工作需要写了个小程序,用于在图片集中自动抽取需要的照片。该程序只是实现了基本功能,还有很多需要完善的地方,展示出来算是给自己鼓鼓气吧。

该程序应用有一定特殊条件,因我选择的图片集是工业生产过程中自动拍摄生成的,因而其文件名很有规律,所以便于操作。

程序使用说明:

1. 需要Python编辑器来运行该程序, 而且需要将程序文件和需要的几个文件夹和.csv文件放在同一目录下,这样运行速度比较快

2. 文件夹original_el 用于存放所有原始图片集,picked_el 用于存放找到的图片, sn.csv文件用于存放需要查找图片的名称

程序如下:

#_*_coding:utf-8_*_
'''
Version V17.1.0
Date 2017-10-15
@Author Cheney
'''

# 收集EL 图片集中需要的图片,在elpick目录下进行

from PIL import Image
import csv
import os


# 获取需要图片的文件名
def readImageName():
  # 在elpick目录下读取sn.scv文件,该文件读取出来后元素是list 需要转换为str
  get_csv = csv.reader(open("elpick/sn.csv"))
  origSN = []
  transSN = []
  for sn in get_csv:
    origSN.append(sn)
  tempList = origSN

  # 读取csv文件获时获取到的列表,其元素也是列表,需要将其转换为字符串元素,使用下面for语句实现
  for s in tempList:
    # 去掉列表元素中的[''] 这几个字符
     s = str(s).strip('[\'')
    s = str(s).strip('\']')
  transSN.append(s)
  ImageName = transSN
  return ImageName

pickImageName = readImageName()
# 遍历所有图片集的文件名
for image in os.listdir("elpick/original_el"):
  # 将读取到的文件名进行处理,去扩展名,若是int文件名需要对文件名进行int 处理
  imageName = image.strip(".jpg")

  # 比较判断 若遍历的文件名在需要收集的列表中,读取之后并保存到pick_el文件夹下
  if imageName in pickImageName:
    pickImage = Image.open(('elpick/original_el/%s.jpg') % imageName)
    pickImage.save(("elpick/picked_el/%s.jpg") % imageName)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之从格式化表达式到方法
Sep 28 Python
Python中的字典遍历备忘
Jan 17 Python
Python工程师面试必备25条知识点
Jan 17 Python
python+opencv实现霍夫变换检测直线
Oct 23 Python
对Python Pexpect 模块的使用说明详解
Feb 14 Python
Python字典推导式将cookie字符串转化为字典解析
Aug 10 Python
使用pyshp包进行shapefile文件修改的例子
Dec 06 Python
python利用datetime模块计算程序运行时间问题
Feb 20 Python
Python3 shelve对象持久存储原理详解
Mar 23 Python
Pycharm操作Git及GitHub的步骤详解
Oct 27 Python
python tkinter实现连连看游戏
Nov 16 Python
Python OpenCV之常用滤波器使用详解
Apr 07 Python
用pycharm开发django项目示例代码
Oct 24 #Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 #Python
Python读取mat文件,并保存为pickle格式的方法
Oct 23 #Python
Python读取系统文件夹内所有文件并统计数量的方法
Oct 23 #Python
Python实现按逗号分隔列表的方法
Oct 23 #Python
Python解析Excle文件中的数据方法
Oct 23 #Python
使用python对excle和json互相转换的示例
Oct 23 #Python
You might like
php以post形式发送xml的方法
2014/11/04 PHP
php制作文本式留言板
2015/03/18 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
Javascript isArray 数组类型检测函数
2009/10/08 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
解析Jquery中如何把一段html代码动态写入到DIV中(实例说明)
2013/07/09 Javascript
js取消单选按钮选中并判断对象是否为空
2013/11/14 Javascript
javascript禁止访客复制网页内容的实现代码
2015/08/05 Javascript
jQuery 判断是否包含在数组中Array[]的方法
2016/08/03 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
JavaScript String(字符串)对象的简单实例(推荐)
2016/08/31 Javascript
HTML5canvas 绘制一个圆环形的进度表示实例
2016/12/16 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
jQuery插件zTree实现删除树节点的方法示例
2017/03/08 Javascript
JS实现加载和读取XML文件的方法详解
2017/04/24 Javascript
使用Browserify来实现CommonJS的浏览器加载方法
2017/05/14 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
详解小程序用户登录状态检查与更新实例
2019/05/15 Javascript
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
微信小程序弹窗禁止页面滚动的实现代码
2020/12/30 Javascript
[00:39]DOTA2上海特级锦标赛 Liquid战队宣传片
2016/03/04 DOTA
Python备份Mysql脚本
2008/08/11 Python
按日期打印Python的Tornado框架中的日志的方法
2015/05/02 Python
简单实现python爬虫功能
2015/12/31 Python
Python实现字典依据value排序
2016/02/24 Python
windows下安装Python虚拟环境virtualenvwrapper-win
2019/06/14 Python
解决Keras使用GPU资源耗尽的问题
2020/06/22 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
小学生安全演讲稿
2014/04/25 职场文书
安全横幅标语
2014/06/09 职场文书
2015年八一建军节演讲稿
2015/03/19 职场文书
党员转正介绍人意见
2015/06/03 职场文书
python基于turtle绘制几何图形
2021/06/15 Python
SpringBoot实现异步事件驱动的方法
2021/06/28 Java/Android
分享五个Node.js开发的优秀实践 
2022/04/07 NodeJs