Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按大小删除图像_Python - Fatal编程技术网

Python 按大小删除图像

Python 按大小删除图像,python,Python,我有一个程序,根据颜色位置和锐度搜索对象。我剪下了一张140x140像素的找到物体的图像。但由于一些错误,有些图像的大小不是这样。我的锐度行列式总是返回那些较小的。我的问题是如何迭代遍历文件夹并仅删除大小不为140x140像素的图像。查看本教程,它有助于给定目录中文件的迭代,扩展名为.jpg、.png等 要真正更改文件,我不太确定,但可能类似于python os。这是许多不同方法中的一种。只需确保在运行任何批量删除之前对其进行测试,因为这将在不发出警告的情况下删除文件 impor

我有一个程序,根据颜色位置和锐度搜索对象。我剪下了一张140x140像素的找到物体的图像。但由于一些错误,有些图像的大小不是这样。我的锐度行列式总是返回那些较小的。我的问题是如何迭代遍历文件夹并仅删除大小不为140x140像素的图像。

查看本教程,它有助于给定目录中文件的迭代,扩展名为.jpg、.png等


要真正更改文件,我不太确定,但可能类似于python os。

这是许多不同方法中的一种。只需确保在运行任何批量删除之前对其进行测试,因为这将在不发出警告的情况下删除文件

        import os
        import cv2

        img = cv2.imread('/absolute/path/to/your/file', cv2.IMREAD_GRAYSCALE)
        h, w = img.shape
        if(not (h == 140 and w == 140)):
            os.remove('/absolute/path/to/your/file')
对于迭代目录中的文件,已经有一个SO线程提出了多种解决方案:


你有困难的部分到底是什么?你知道如何反复浏览文件夹吗?您知道如何确定文件是否为图像吗?你知道如何确定图像的大小吗?你知道如何删除这个文件吗?到底有什么困难?谢谢。我的问题措词不正确,我正在寻找如何检查图像大小的答案。如果你无法加载图像,你也可以使用PIL:from PIL import image img=image.open'/absolute/path/to/your/file'w,h=img.size
import os
import cv2

img = cv2.imread('/yourfile', cv2.IMREAD_GRAYSCALE)
h, w = img.shape
if(not (h ==  and w == 140)):
    os.remove('/absolute/path/to/your/file')