实战Python图形文件操作基本编程 !

archlinux编辑修改img文件 实现原理相当,解锁软件根据手机硬件特征生成中间码,把中间码发给服务器,服务器进行某种加密传回来写入特定位置,bootloader会在这个位置检查解锁信息是否合法,合法就写入已解锁的标志,就可以刷入并加载第三方镜像了。-S file_contexts:表示sepolicy的file_contexts,5.0及以上安卓系统存在file_contexts文件,该文件是对selinux文件系统的说明,在手机root目录下能找到。在某处存放一个标志,标识有没有解锁,如果解锁了,就放开以上限制。刷入 boot 分区。 阅读详情

我们应该都明白数据处理对于CV来说至关重要,今天我们不说数据增强等高大上的操作,我们来聊聊当我们拿到图片数据时如何对图片数据进行整理,如更改图片文件格式和文件名等等。

1 遍历图片文件/文件夹

当提到文件/文件夹遍历时我们就不得不提python中的os.walk这个简单易用的文件、目录遍历器。它可以帮助我们高效的处理文件、目录方面的事情。话不多说,我们直接看代码和具体用法。

现在我们有如下的文件结构:

 

 

 

 

 

 

 

Python资源共享群:484031800

 

我们看看如何通过os.walk来遍历上面的这些图片按和目录。

import os

rootDir = r"D:\file\kobe"

for root, dirs, files in os.walk(rootDir):

通过上面代码如果我们输出root即print(root),会得到下面的结果。

D:\file\kobe

D:\file\kobe\a

D:\file\kobe\b

D:\file\kobe\b\c

我们对照的看下输出结果和文件结构,应该明白了root实际上就是各个目录(文件夹)的路径,当然这里是包括顶级目录的,如我们这里的kobe文件夹。

我们再看看输出dirs后的结果。

['a', 'b']

[]

['c']

[]

['a','b']实际上是root中第一个路径(D:\file\kobe)中包含的文件夹,即kobe文件夹中的文件夹。第二行的输出[]和第四行的输出[]依次就是a文件夹和c文件夹中的包含的文件夹。由于a和c中都没有文件夹,所以输出都是[],第三行的['c']实际上是root中第三个路径(D:\file\kobe\b)中包含的文件夹c文件夹。综上分析我们知道dirs实际上就是root中的各个文件夹。

最后我们再看看files,顾名思义,这个files的输出就是各个文件了,如下:

['kobe1.jpg', 'kobe2.jpg', 'kobe3.jpg', 'kobe4.jpg']

['kobe5.jpg']

[]

[]

参照root的输出结果,上面的输出依次就是kobe文件夹中的文件、a文件夹中的文件、b文件夹中的文件和c文件夹的文件。

通过上面的介绍,我相信你已经明白了os.walk的具体用法和使用Python来遍历图片文件/文件夹了。

2 更改文件名字和格式

现在我们有个kobe文件夹,里面图片如下:

 

 

 

 

现在我们需要将这五张图片统一更改名称和格式,更改后的格式如下KOBE_i.jpg,其中i为1-5。

import os

rootDir = r"D:\file\kobe"

i = 1

for root, dirs, files in os.walk(rootDir):

  for f in files:

    srcname = os.path.join(root, f)

    srcformat = srcname.split('.')[-1]

    if srcformat is not "png":

      new_item = "KOBE"+str(i)+ '.png'

      os.rename(srcname, os.path.join(rootDir, new_item))

      i+=1

 

 

 

 

现在我们分析下上面的代码。通过1.1的讲解我相信你应该知道root,dirs和files这三个变量里面的内容了。那么srcname即os.path.join(root,f)又是什么呢?我先输出下secname。结果如下:

D:\file\kobe\KOBE_1.png

D:\file\kobe\KOBE_2.png

D:\file\kobe\KOBE_3.png

D:\file\kobe\KOBE_4.png

D:\file\kobe\KOBE_5.png

很显然,srcname就是每个图片文件的名字。而root=D:\file\kobe,files=['KOBE_1.png', 'KOBE_2.png', 'KOBE_3.png', 'KOBE_4.png', 'KOBE_5.png']。相信你应该知道os.path.join()的作用了,它实际上就是将join()里面参数拼接成一个完整的路径。

3 将图片路径输出到文本文件中

话不多说,我们直接上代码,如下:

import os

rootDir = r"D:\file\kobe"

i = 1

ftxtfile = open(r"D:\file\a.txt",'w')

for root, dirs, files in os.walk(rootDir):

  print(root)

  print(files)

  for f in files:

    srcname = os.path.join(root, f)

    srcformat = srcname.split('.')[-1]

    if srcformat is not "png":

      new_item = "KOBE_"+str(i) + '.png'

      newname = os.rename(srcname, os.path.join(rootDir, new_item))

 ftxtfile.write(os.path.join(rootDir, new_item )+ '\n')

      i+=1

我们通过上面的代码就可以将图片路径输出到.txt文件中。其实很简单,首先通过open()打开txt文件,然后通过write()将需要写入的内容写进去就行了。下面就是写入后的结果:

 

 

 

 

4 批量复制图片文件

现在按照第三节中得到的txt文件中的内容将图片复制到另外一个文件夹中(D:\file\file\a),代码如下:

import shutil

def objFileName():

  local_file_name_list = r'D:\file\a.txt'

  # 指定名单

  obj_name_list = []

  for i in open(local_file_name_list, 'r'):

    obj_name_list.append(i.replace('\n', ''))

 print(obj_name_list)

  return obj_name_list

def copy_img():

  local_img_name = r"D:\file\kobe"

  path = r"D:\file\file\a"

  # 指定存放图片的目录

  for i in objFileName():

    print(i)

    shutil.copy(i, path )

if __name__ == '__main__':

  copy_img()

在这个代码中我们主要用到了shutil.copy()这个函数,它的具体用法如下:

shutil.copy(source, destination) ,其中source/destination 都是字符串形式的路径,source是原文件或者原文件夹的路径。destination是目标文件或者目标文件夹的路径 。

另外在这个代码中我们定义了一个函数objFileName(),它的作用是将.txt文件中的图像路径转化成一个list。你可以像上面代码的加粗部分那样进行验证。会得到如下结果。

['D:\\file\\kobe\\KOBE_1.png', 'D:\\file\\kobe\\KOBE_2.png', 'D:\\file\\kobe\\KOBE_3.png', 'D:\\file\\kobe\\KOBE_4.png', 'D:\\file\\kobe\\KOBE_5.png']

5 批量更改图片文件尺寸

我们知道通常训练网络结构模型的时候,图像的输入大小需要保持一个定值,如224X224等。下面这个代码就可以批量改变图片大小到指定尺寸。

from PIL import Image

import os.path

import glob

def convertpng(pngfile, outdir, width=48, height=48):

  img = Image.open(pngfile)

  try:

    basename = os.path.basename(pngfile)

    filename = os.path.splitext(basename)[0]

    filetype = os.path.splitext(basename)[1] # 文件扩展名

    new_img = img.resize((width, height), Image.BILINEAR)

    new_img.save(os.path.join(outdir, filename+"_"+str(width)+"x"+str(height)+filetype))

  except Exception as e:

    print(e)

for pngfile in glob.glob(r"D:\file\kobe"+"/*.png"):

  convertpng(pngfile , r"D:\file\file\b",224,224)

更改图片大小前的样式如下:

 

 

 

 

我们先看下代码运行后的结果,如下:

 

 

 

 

上面的代码我们主要定义了一个将图片大小resize到指定大小的convertpng函数,这个函数总共有四个参数,分别是pngfile,outdir和图像需要更改的宽度和高度。其中pngfile就是需要更改大小的图片文件,outdir是图片更改大小后的保存路径。

几种常用打开/修改系统镜像system.img工具 几种常用打开系统镜像system.img工具: 一、winHex 能打开、修改、保存、导出文件 软件小巧,不到1M。 (鼠标拖动镜像文件到工作区才会显示目录) 导出方法: 文件上右击 - 恢复/复制 - 选择保存的地方 二、Beyond Compare 文件比较工具 能用“Copy to folder…”将文件导出来,但不能修改 三、 四、各种ROM助手 可以精简APP: 编辑build.prop : 追加或删除app、修改权限等: 完善后点击“开始封装”即可。 ... 阅读详情

相关推荐

python处理cad_python3读取autocad图形文件.py实例

废话不多说,看代码吧!'''待完善。此代码实现了,根据标注文本的属性,数值,位置,及 容差,去判断 设计 和 实测两图中的同一位置的尺寸。如果是同一位置的尺寸,则进行比较,并把结果存成表格,到运行此代码的当前目录。此代码运行时,要读取的 dwg文件 必须处于打开状态。且 不能在 移动(pan) 模式。启动代码:python dwg_measurements_comparison4.py [8]其中...

weixin_39945445的博客 1906

python图像处理

首先安装PIL:Python Image Lib 注意!PIL的分支:pillow 安装时应输入:pip install pillow 一、 查看基本参数&灰度图 from PIL import Image import os import matplotlib.pyplot as plt im=Image.open('要查看的图片').convert("L") #conert后面的参数如果是L即灰度图,RGB即正常 print(im.format,im.size,im.mode) .

fennekin的博客 1066

ArcGIS实战:如何批量导出多个图形文件的经纬度坐标到txt(含Python脚本)

本文详细介绍了使用ArcGIS和Python脚本批量导出多个图形文件经纬度坐标到txt文件的自动化解决方案。针对手动操作效率低、易出错的痛点,文章从核心原理剖析到实战脚本编写,提供了从单文件处理到批量框架的完整流程,并分享了处理复杂几何、自定义格式等高级技巧,旨在帮助GIS从业者大幅提升数据处理效率。

9o8p7i6u5y的博客 1103

【Python进阶】实战Python图形文件操作基本编程

欢迎来到专栏《Python进阶》。在这个专栏中,我们会讲述Python的各种进阶操作,包括Python对文件、数据的处理,Python各种好用的库如NumPy、Scipy...

hacker_long的专栏 589

python读取cad元素_python3读取autocad图形文件.py实例

废话不多说,看代码吧!'''待完善。此代码实现了,根据标注文本的属性,数值,位置,及 容差,去判断 设计 和 实测两图中的同一位置的尺寸。如果是同一位置的尺寸,则进行比较,并把结果存成表格,到运行此代码的当前目录。此代码运行时,要读取的 dwg文件 必须处于打开状态。且 不能在 移动(pan) 模式。启动代码:python dwg_measurements_comparison4.py [8]其中...

weixin_28684825的博客 4412

使用Python绘制无向/有向图形的基本属性、图形读写及绘制详解

本文介绍了如何使用NetworkX创建无向/有向图形,并提供了相关的源代码示例。此外,还介绍了如何读取和写入图形文件。使用NetworkX,可以轻松地创建、操作和研究复杂的网络结构,并提供丰富的数据分析和可视化功能。

学习使你进步。 690

实战Python图形文件操作基本编程!

我们应该都明白数据处理对于CV来说至关重要,今天我们不说数据增强等高大上的操作,我们来聊聊当我们拿到图片数据时如何对图片数据进行整理,如更改图片文件格式和文件名等等。 1 遍历图片文件/文件夹 当提到文件/文件夹遍历时我们就不得不提python中的os.walk这个简单易用的文件、目录遍历器。它可以帮助我们高效的处理文件、目录方面的事情。话不多说,我们直接看代码和具体用法。 现在我们有如下的...

Pythoncxy的博客 167

使用C++模拟M维区域中的布朗运动并创建图形文件

在本文中,我们将使用C++语言模拟M维区域中的布朗运动,并通过创建图形文件来展示模拟结果。该函数使用Python画图库matplotlib生成坐标轴和所有移动位置的连线。首先,定义一个布朗运动类。该类中包含了当前位置、步长、步数、坐标轴等成员变量,在构造函数中进行初始化。我们成功地使用C++语言模拟了M维区域中的布朗运动,并通过创建图形文件来展示模拟结果。该函数利用正态分布产生下一个位置,并更新当前位置和步数。函数创建坐标轴并绘制出所有移动位置的连线。函数中,初始化布朗运动实例,并调用。

持续更新 183

python抓取文件夹内png_实战Python图形文件操作基本编程!

我们应该都明白数据处理对于CV来说至关重要,今天我们不说数据增强等高大上的操作,我们来聊聊当我们拿到图片数据时如何对图片数据进行整理,如更改图片文件格式和文件名等等。1 遍历图片文件/文件夹当提到文件/文件夹遍历时我们就不得不提python中的os.walk这个简单易用的文件、目录遍历器。它可以帮助我们高效的处理文件、目录方面的事情。话不多说,我们直接看代码和具体用法。现在我们有如下的文件结构:P...

weixin_39788960的博客 490

WINIMAGE8.5中文版:IMG格式文件处理工具

IMG文件是计算机磁盘映像的一种格式,它包含了硬盘或其他存储介质的精确副本。这些文件通常用于备份、数据迁移和软件分发。IMG文件作为镜像文件,对于确保数据的完整性以及系统恢复起着关键作用。WINIMAGE8.5中文版作为一款功能强大的磁盘映像工具,对于IT专业人员来说,是日常工作中不可或缺的软件之一。它支持包括IMG在内的多种磁盘映像格式,并提供了直观易用的用户界面。当您首次打开WINIMAGE8.5中文版时,首先会注意到其清晰的界面布局。界面主要分为几个部分:菜单栏、工具栏、工作区以及状态栏。

weixin_35753431的博客 1671

向量数据库安全实战:从Embedding反推到检索越权的全链路防护

随着RAG应用在企业中的普及,向量数据库已成为知识库系统的核心组件。但许多团队对向量数据的安全认知仍停留在传统数据库的账号密码、网络隔离和磁盘加密上。事实上,向量化并非加密,而是一种有损压缩的语义映射,向量本身可以被反推模型还原出原文关键信息,形成高保真的语义泄露通道。同时,相似度检索的模糊匹配特性打破了传统行列权限模型,使得越权检索和成员推断攻击成为新的安全威胁。理解这些原理,有助于企业在数据采集、向量化、索引构建、检索查询等环节构建分层防护体系,包括脱敏、扰动、过滤下推、网关控制等手段。本文从基础概念出

weixin_29323551的博客 262

如何让python显示图形文件无效_【Python进阶】实战Python图形文件操作基本编程

欢迎来到专栏《Python进阶》。在这个专栏中,我们会讲述Python的各种进阶操作,包括Python对文件、数据的处理,Python各种好用的库如NumPy、Scipy、Matplotlib、Pandas的使用等等。我们的初心就是带大家更好的掌握Python这门语言,让它能为我所用。今天是《Python进阶》专栏的第二期,在本期中,我们将主要介绍如何利用Python对图像文件进行一些处理。作者&...

weixin_39774905的博客 106

【AUTOSAR】MCU Port的配置(MCAL)【EB】

熟悉Classic AUTOSAR架构的朋友应该知道,经常需要用到MCU中的Port这个模块。那么如何通过工具快速配置一个Port呢?

xinsuiwodong2014的博客 9518

img文件编辑_【Python进阶】实战Python图形文件操作基本编程

欢迎来到专栏《Python进阶》。在这个专栏中,我们会讲述Python的各种进阶操作,包括Python对文件、数据的处理,Python各种好用的库如NumPy、Scipy、Matplotlib、Pandas的使用等等。我们的初心就是带大家更好的掌握Python这门语言,让它能为我所用。今天是《Python进阶》专栏的第二期,在本期中,我们将主要介绍如何利用Python对图像文件进行一些处...

weixin_39899244的博客 763

在Keil下完成一个汇编程序的编写

在学习STM32的路上开始是学的C语言尚未进行对汇编进行学习,因此抽出时间来学习一下在keil下的汇编语言。

Liu-FE的博客 1万+

2026年数据中心运行与管理专业人才培养基地建设方案(高职、数据中心运行与管理新专业、人才培养、专业代码:510310)

摘要: 为响应国家“东数西算”战略和数字经济需求,我校拟联合行业领军企业建设数据中心运行与管理人才培养基地。项目基于国家政策引导和产业快速发展背景,针对行业10万人才缺口,对标教育部新设专业标准(510310),分三阶段实施五年规划:专业奠基(2026-2028)、内涵深化(2028-2029)、辐射引领(2030-2031)。建设内容涵盖校企协同岗位能力分析、模块化课程开发(如网络管理、自动化运维等)、实训基地搭建及“课证融通”培养模式,重点培养基础设施、网络服务、运维托管三类岗位技能人才,目标建成区域性

啊碧根果的博客 1691

python3读取autocad图形文件.py

''' 待完善。 此代码实现了,根据标注文本的 属性,数值,位置,及 容差, 去判断 设计 和 实测两图中的同一位置的尺寸。 如果是同一位置的尺寸,则进行比较, 并把结果存成表格,到运行此代码的当前目录。 此代码运行时,要读取的 dwg文件 必须处于打开状态。 且 不能在 移动(pan) 模式。 启动代码: python dwg_measurements_comparison4.py [8] ...

weixin_42193179的博客 1万+

手把手教你用Zynq-7100 FPGA实现100Mbps OOK信号定时同步(含完整Verilog代码)

本文详细介绍了如何在Zynq-7100 FPGA平台上实现100Mbps OOK信号的定时同步,涵盖插值算法、Gardner定时误差检测等关键技术。通过完整的Verilog代码和优化技巧,解决了50MHz外部时钟条件下的400MHz采样率同步挑战,为无线通信系统设计提供实用解决方案。

weixin_42522374的博客 302

【Python】进阶学习:基于Matplotlib--使用plt.savefig()实现图形文件的保存

📊【Python进阶】轻松掌握Matplotlib,plt.savefig()助你保存炫酷图表!🖼️ 还在为如何保存Python绘制的图表而烦恼吗?Matplotlib的plt.savefig()来帮你!🎉本文详细解析plt.savefig()参数,助你自定义图像样式,轻松保存炫酷图表。更有多图与子图保存技巧,以及常见问题解决方案分享。从入门到精通,一文搞定Matplotlib图表保存!快来开启你的数据可视化之旅吧!#Python进阶 #Matplotlib #plt.savefig() #图表保存

创作高质量博文,分享知识,共同进步! 2万+

FM20S用户手册--Linux系统启动卡制作及系统固化

评估板出厂时,默认提供一张配套的Micro SD卡,此卡为可正常使用的Linux系统 启动卡。评估板断电,将Linux系统启动卡插入评估板Micro SD卡槽,根据评估底板丝印将 启动方式选择拨码开关拨为1010(1-4).此档位为Micro SD启动模式。使用Linux 系统启动卡启动系统时,将使用此目录的BOOTbn文件启动FSBL和U-Boot。Linux系统启动卡制作时,已将固化系统的脚本文件mkemmcboot.sh拷贝至Linux系 统启动卡文件系统的"/opt/tools/"目录下。

创龙,嵌入式一体化解决方案商 303

AI Agent Harness自动化漏洞扫描

本文要介绍的AI Agent Harness自动化漏洞扫描方案,正是为了解决传统漏扫的上述痛点而生。漏洞检出率提升35%以上,逻辑漏洞检出率从不足30%提升到92%误报率从27%降到3%以下,人工复核成本降低90%支持自定义业务系统、IoT、工控等多场景资产扫描,适配成本降低80%内置反馈学习机制,扫描效果越用越好AI Agent是指具备自主感知、决策、行动能力的大模型驱动程序,它可以根据给定的目标,自主调用工具、规划步骤、完成任务。

AI 原生应用开发的博客 473

ad输出光绘文件_【Python进阶】实战Python图形文件操作基本编程

欢迎来到专栏《Python进阶》。在这个专栏中,我们会讲述Python的各种进阶操作,包括Python对文件、数据的处理,Python各种好用的库如NumPy、Scipy、Matplotlib、Pandas的使用等等。我们的初心就是带大家更好的掌握Python这门语言,让它能为我所用。今天是《Python进阶》专栏的第二期,在本期中,我们将主要介绍如何利用Python对图像文件进行一些处...

weixin_39885383的博客 216

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Opencv for python 对于图形文件和图形的基本操作

opencv在机器学习中一般用在读入图片的过程。一 读入图片1.1导入基本的库#coding:utf-8 from numpy import * import cv21.2从窗口中导入一张图片win_name="mypicyure" #窗口名称 #cv2.WINDOW_NORMAL 窗口大小可自定义 cv2.namedWindow(win_name,

qq_16540387的博客 505

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

chatgpt赋能python:深入了解Python中物体的左右移动

在Python编程中,物体的左右移动是一种在屏幕或场景中移动图形图像的方法。在这种移动中,物体从左到右或从右到左移动,有时也可以进行斜向移动。例如,在一个平面上的对象可以根据用户的选择或程序逻辑向左或向右移动,从而实现游戏中移动角色、移动画布或移动背景的效果。本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。

yakuchrisfor的博客 701

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: 如何使用Python脚本分析CPU使用情况的?
下一篇: Python一行代码搞定炫酷可视化,你需要了解一下Cufflinks!
普通网友
博客等级 码龄7年 438粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值