Вы можете прочитать произвольный двоичный контент
path = "/foo/bar/baz.jpg"
File.open(path, 'rb') {|file| file.read }
Если вы хотите записать это изображение в другое ..
File.open(path, 'rb') do |in|
File.open("foo/bar/bob.jpg", 'wb') {|out| out.write(in.read) }
end
Бинарные флаги требуются только в Windows / DOS.
См. IO класс