指定ディレクトリ以下の画像ファイル名を再帰的にすべて取得するプログラム (Ruby)

http://carumisu.hatenablog.com/entry/2015/11/03/201748Ruby版。

require "find"
require 'rubygems'
require 'RMagick'

def GetImageList(mydir)
    imageList = []
    Find.find(mydir) do |f|
        if File::ftype(f) == "file"
            begin
                Magick::Image.read(f).first.format
                imageList.push(f)
            rescue
            end
        end
    end
    return imageList
end

def CopyResizedImage(imgList,path)
    a = 0
    imgList.each do |imgPath|
        img = Magick::Image.read(imgPath).first
        img.resize_to_fit(64,64).write(path+"/#{a}.jpg")
        a+=1
    end
end

list = GetImageList(".")
CopyResizedImage(list,"./test")