循环遍历图像目录并将它们旋转 x 度并保存到目录

2023-12-02

我正在使用 Python、Open、Numpy 和 Scipy。我有一个图像目录,我想将其旋转一定角度。我想编写这个脚本。我正在用这个,OpenCV Python 将图像围绕特定点旋转 X 度但它似乎并不完全按照我的设想进行。我得到了指定的无效轮换计划,但我认为我不应该得到这个。

我的代码如下所示:

from scipy import ndimage
import numpy as np
import os
import cv2

def main():
    outPath = "C:\Miniconda\envs\.."
    path = "C:\Miniconda\envs\out\.."
    for image_to_rotate in os.listdir(path):
        rotated = ndimage.rotate(image_to_rotate, 45)
        fullpath = os.path.join(outPath, rotated)

  if __name__ == '__main__':
     main()

您需要在旋转图像文件之前实际读取它们。您当前的代码所做的只是迭代文件(和目录)的名称。

os.listdir(路径)为您提供文件夹内容的列表(基本上只是名称),然后您需要使用以下命令打开这些文件ndimage.imread()功能。

这应该有效:

from scipy import ndimage, misc
import numpy as np
import os
import cv2

def main():
    outPath = "C:\Miniconda\envs\.."
    path = "C:\Miniconda\envs\out\.."

    # iterate through the names of contents of the folder
    for image_path in os.listdir(path):

        # create the full input path and read the file
        input_path = os.path.join(path, image_path)
        image_to_rotate = ndimage.imread(input_path)

        # rotate the image
        rotated = ndimage.rotate(image_to_rotate, 45)

        # create full output path, 'example.jpg' 
        # becomes 'rotate_example.jpg', save the file to disk
        fullpath = os.path.join(outPath, 'rotated_'+image_path)
        misc.imsave(fullpath, rotated)

if __name__ == '__main__':
    main()

PS:这种迭代文件夹内容的方法仅适用于目录中只有文件而没有子目录的情况。os.listdir(路径)将返回任何文件以及子目录的名称。

您可以从这篇文章中了解如何仅列出目录中的文件:如何列出一个目录下的所有文件?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

循环遍历图像目录并将它们旋转 x 度并保存到目录 的相关文章

  • Gunicorn 工作人员无论如何都会超时

    我正在尝试通过gunicorn运行一个简单的烧瓶应用程序 但是无论我做什么 我的工作人员都会超时 无论是否有针对应用程序的活动 工作人员在我设置任何内容后总是会超时timeout值到 是什么导致它们超时 当我发出请求时 请求成功通过 但工作
  • 如何在 __init__ 中使用await设置类属性

    我如何定义一个类await在构造函数或类体中 例如我想要的 import asyncio some code class Foo object async def init self settings self settings setti
  • 在 Python 中将列表元素作为单独的项目返回

    Stackoverflow 的朋友们大家好 我有一个计算列表的函数 我想单独返回列表的每个元素 如下所示 接收此返回的函数旨在处理未定义数量的参数 def foo my list 1 2 3 4 return 1 2 3 4 列表中的元素数
  • pandas DataFrame.join 的运行时间是多少(大“O”顺序)?

    这个问题更具概念性 理论性 与非常大的数据集的运行时间有关 所以我很抱歉没有一个最小的例子来展示 我有一堆来自两个不同传感器的数据帧 我需要最终将它们连接成两个very来自两个不同传感器的大数据帧 df snsr1 and df snsr2
  • 多输出堆叠回归器

    一次性问题 我正在尝试构建一个多输入堆叠回归器 添加到 sklearn 0 22 据我了解 我必须结合StackingRegressor and MultiOutputRegressor 经过多次尝试 这似乎是正确的顺序 import nu
  • 我应该使用 Python 双端队列还是列表作为堆栈? [复制]

    这个问题在这里已经有答案了 我想要一个可以用作堆栈的 Python 对象 使用双端队列还是列表更好 元素数量较少还是数量较多有什么区别 您的情况可能会根据您的应用程序和具体用例而有所不同 但在一般情况下 列表非常适合堆栈 append is
  • python multiprocessing 设置生成进程等待

    是否可以生成一些进程并将生成进程设置为等待生成的进程完成 下面是我用过的一个例子 import multiprocessing import time import sys def daemon p multiprocessing curr
  • Tensorboard SyntaxError:语法无效

    当我尝试制作张量板时 出现语法错误 尽管开源代码我还是无法理解 我尝试搜索张量板的代码 但不清楚 即使我不擅长Python 我这样写路径C Users jh902 Documents logs因为我正在使用 Windows 10 但我不确定
  • 使用 python/numpy 重塑数组

    我想重塑以下数组 gt gt gt test array 11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44 为了得到 gt gt gt test2 array 11 12 21 22 13 14
  • 使用 Python Oauthlib 通过服务帐户验证 Google API

    我不想使用适用于 Python 的 Google API 客户端库 但仍想使用 Python 访问 Google APIOauthlib https github com idan oauthlib 创建服务帐户后谷歌开发者控制台 http
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • 无法导入 langchain.agents.load_tools

    我正在尝试使用 LangChain Agents 但无法导入 load tools 版本 langchain 0 0 27 我尝试过这些 from langchain agents import initialize agent from
  • 未知错误:Chrome 无法启动:异常退出

    当我使用 chromedriver 对 Selenium 运行测试时 出现此错误 selenium common exceptions WebDriverException Message unknown error Chrome fail
  • 嵌套作用域和 Lambda

    def funct x 4 action lambda n x n return action x funct print x 2 prints 16 我不太明白为什么2会自动分配给n n是返回的匿名函数的参数funct 完全等价的定义fu
  • 如何将 GAE 中一种 Kind 中的所有实体复制到另一种 Kind 中,而无需显式调用每个属性

    我们如何使用function clone entity 如中所述在 Python 中复制 Google App Engine 数据存储中的实体 而无需在 编译 时知道属性名称 https stackoverflow com question
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • SwiftUI 全屏图像背景

    我想在背景中显示全屏图像 我已经实现了这个 struct LoginView View var body some View VStack Spacer Text Hallo Text Hallo2 Text Hallo2 Text Hal
  • 将索引与值交换的最快方法

    考虑pd Series s s pd Series list abcdefghij list ABCDEFGHIJ s A a B b C c D d E e F f G g H h I i J j dtype object 交换索引和值并
  • 如何将Python3设置为Mac上的默认Python版本?

    有没有办法将 Python 3 8 3 设置为 macOS Catalina 版本 10 15 2 上的默认 Python 版本 我已经完成的步骤 看看它安装在哪里 ls l usr local bin python 我得到的输出是这样的
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • 如何更新 SQL 表逻辑

    我有一个表结构为 Table 3 Fruit ID Foreign Key Primary Key of Table 1 Crate ID Foreign Key Primary Key of Table 2 现在我需要执行一个查询 Upd
  • 为什么 OpenGL 混合在 HTC Desire 上不起作用?

    有谁知道如何在 HTC Desire 上启用 OpenGL android 混合 我正在尝试绘制彩色三角形并使用颜色缓冲区的 alpha 值将它们与背景 或另一个三角形 混合 它可以在模拟器 2 1 和 htc Hero 2 1 上运行 但
  • Pygame:奇怪的位块传送错误

    我一直在使用 Python 3 1 和 PyGame 2 7 开发一个简单的主菜单 当鼠标光标位于特定区域内时 屏幕上的文本应变为白色 我正在使用函数来块传输屏幕 第一个函数通常会按块传送主菜单 而其他两个函数会按块传送菜单并突出显示一些文
  • 使用 HTTP POST 发送 > 1MB 的文件

    我正在将视频和音频文件从 Android 应用程序发送到Wampserver 其中一些可能会变得相当大 我倾向于得到OutofMemory文件即将结束时出现问题1MB在尺寸方面 我将每个文件单独转换为字节流 我认为字节流太大 因此Outof
  • SQL Server 日志文件混乱

    我正在寻找有关 SQL Server 日志文件的一些说明 我有一个较大的数据库 2GB 最近由于某种原因没有备份 数据库的日志文件增长到大约 11GB 据我了解 这是数据库中发生的所有事务和语句 我的问题 是什么原因导致数据库日志文件被刷新
  • 从笛卡尔集中选择特定集的逻辑

    我正在制作一个密码暴力破解工具作为学习练习 并且我希望它可以恢复 所以 我想要的是能够说 这是可能的字符集 如果我计算该集的每个可能组合的笛卡尔集 长度为 n 那么点 x 的集是什么 但是 我想在不计算整个集合的情况下执行此操作 我在网上的
  • sqlite全文搜索中的sql注入

    考虑 sqlite3 fts4 表 c execute CREATE VIRTUAL TABLE docs USING fts4 content 以下内容是否可以避免 txt 包含字符串的 sql 注入 我不确定参数化查询是否安全 因为只有
  • Visual Studio 部署项目可选桌面快捷方式

    您好 我正在尝试获取与 VS2010 部署项目集成的可选桌面快捷方式 我在设置的部分添加了 TargetMachine 文件系统的 用户桌面 的快捷方式 并且在用户界面中设置了一个复选框对话框 如何让 Checkbox1Property 转
  • 在每个jsp页面中包含css和js文件

    我有常见的 css 和 js 文件 它们包含在每个 jsp 文件中 那么将它们包含在每个页面中的最佳实践是什么 我以前用过但我想知道这是否是最好 最干净的继续方式 我喜欢为此使用片段 它们是 JSP 支持的标准 因此不需要其他依赖项 正如您
  • Excel 2010 VBA 单步执行字符串并按顺序将一个字符放入每个单元格中

    很多很多年前 我已经习惯在 C 中进行字符串切片 但我正在尝试使用 VBA 来完成此特定任务 现在我已经创建了一个字符串 这是一个字符串 并创建了一个新的工作簿 我现在需要的是使用字符串切片将 t 放入 A1 h 放入 A2 i 放入 A3
  • AngularDart:路由名称的命名空间也分层?

    考虑以下分层路由的初始化 摘自AngularDart 教程 router root addRoute name add path add enter view view addRecipe html addRoute name recipe
  • 如何在IntelliJ IDEA中设置SDK?

    我没有找到任何在 IntelliJ IDEA 中设置 SDK 的方法 在 ubuntu 16 04 LTS 中找不到为 IntelliJ IDEA 设置 SDK 的任何路径 我正在使用这个 IDE 来处理 mongodb 但由于这个问题无法
  • Delphi 中的库项目是否有条件定义?

    我有一个实用程序单元 其中的代码在一些应用程序和 DLL 之间共享 我想根据当前项目类型有选择地编译本单元的部分内容 应用程序 包或库 我在中找不到库或包的任何条件定义System单位 Google 没有找到任何相关内容 那么 是否有任何条
  • 删除行后释放 postgres 数据库中的存储空间的步骤?

    我超过了 Heroku 上 postgres 数据库的 GB 限制 我找到了一个 非常大的 已弃用的表并运行Plot delete all 现在 17k 行表中有 0 行 我现在可以看到行号有差异 但 GB 没有差异 这是之前的数据大小 3
  • 将 NSPredicate 应用于 [(String, Array)]

    我以这种方式存储数据 var data String Array
  • Javascript 中两个日期初始化的差异

    为什么要做这些两个日期不同 var date1 new Date date1 setFullYear 2012 year four digits date1 setMonth 10 month from 0 11 date1 setDate
  • C++ 回调将文本发送回 C#

    我是 C 新手 我被告知使用 C 的 回调 是最好的解决方案 这是我的情况 我有一个用 C 编写的 DLL这个 DLL 有一个方法来启动通过 C 代码运行的服务 这工作正常 当 DLL 中的服务运行时 我希望 DLL 将文本传递回 C 代码
  • 无法解析:com.google.firebase:firebase-analytics:9.0.0 [重复]

    这个问题在这里已经有答案了 根据Google I O 2016 我知道 Firebase 它对我来说非常好 但我无法使用它 因为这个错误 我得到了一个解决方案 将 Google play services 更新到30 但没有更新尖端 您必须
  • 如何将设备函数中分配的内存复制回主内存

    我有一个包含主机函数和设备函数的 CUDA 程序执行 在主机函数中 我分配了一个全局内存output然后它将被传递给设备函数并用于存储设备函数内分配的全局内存的地址 我想访问主机函数中内核分配的内存 以下是代码 include
  • 循环遍历图像目录并将它们旋转 x 度并保存到目录

    我正在使用 Python Open Numpy 和 Scipy 我有一个图像目录 我想将其旋转一定角度 我想编写这个脚本 我正在用这个 OpenCV Python 将图像围绕特定点旋转 X 度但它似乎并不完全按照我的设想进行 我得到了指定的