`

ruby图片处理

    博客分类:
  • ruby
 
阅读更多

 

我们经常要处理图片,比如搞个什么头像缩略图,在所难免要对图片进行裁剪、缩放等操作,下面就来总结一下Ruby中图片裁剪、缩放的类库。

 

ImageScience:
实现图片放缩的库,使用前需安装freeimage和rubyinline。
网址:http://seattlerb.rubyforge.org/ImageScience.html

 

RMagick:
RMagick是Ruby语言跟ImageMagick图形处理程序之间的接口,Ruby程序可以利用RMagick对图像进行缩略、剪裁等等的一系列操作。
网址:http://rmagick.rubyforge.org

 

等比缩放:

800x800 => 60x90  实际结果: 60x60

800x800 => 135x90  实际结果: 90x90

800x800 => 135x900  实际结果: 135x135

400x900 => 60x60  实际结果: 60x26

400x900 => 135x900  实际结果: 308x135

 

 

MiniMagick:
它是RMagick的精简,直接用Ruby包装ImageMagick command line。避免了RMagick的内存问题。
http://rubyforge.org/projects/mini-magick

 

 

 

 

 

 

 

 

 

1.install imagescience
a)install FreeImage
download freeimage from :http://sourceforge.net/projects/freeimage/files/
$unzip  FreeImage3130.zip
$make
$sudo make install
b)install RubyInline
$sudo gem install RubyInline
c)install ImageScience
http://seattlerb.rubyforge.org/ImageScience.html
$sudo apt-get install libfreeimage3 libfreeimage-dev
$sudo gem install image_science
centos 下是安装ImageMagick
download from http://www.imagemagick.org/script/download.php
make & make install



2.install rmagick
a) install imagemagick
$sudo apt-get install imagemagick
$sudo apt-get install libmagickwand-dev
b) install ruby rmagick
download rmagick from http://rmagick.rubyforge.org/
$tar xzvf RMagick-2.12.....
$ruby setup.rb
$ruby setup.rb install





--------------------------------------------------------------------------------


$ sudo apt-get install imagemagick
$ dpkg -l |grep imagemagick
imagemagick                                                 
imagemagick-doc                           

$ convert
$ whereis convert
$ which is convert
$ convert -compress none -depth 8 -alpha off zhejiang.gif zhejiang.tif

enlarge the image can improve ocr accuracy

I believe the real challenge to apply ocr for plate recognition is
that the plate image are "too dirty" comparing to paper documents.
There are frames, skews, un-even shadows, etc. You have to do your own
work to parse the plate into separate chars and feed the ocr engine. I
don't think tesseract itself can handle this automatically given the
raw image. But I believe it will do pretty well once you get the
binarized separate chars. Basically, plate recognition is more a image
processing problem than ocr problem.

You can use the grammar as post-process to make corrections.


to convert the pdf I used Image Magick convert application. bellow the set command that I use.
convert -density 288 src.pdf -colorspace Gray -depth 8 -alpha off tmp.tif
tesseract tmp.tif out.txt

how to eliminate noise

 

 

 

 

 

 

 

 

 

 

  def upload_file(file)
    if !file.original_filename.empty?
      @filename = file.original_filename
      File.open("#{RAILS_ROOT}/public/images/#{@filename}", "wb") do |f|
        f.write(file.read)
      end
      return @filename
    end
  end


  # params[:file] is Tempfile obj from the page
  img = Magick::Image.from_blob(params[:file].read)[0]
  img.write("#{filename}")

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    ruby图片处理工具

    Ruby 图片处理工具主要指的是利用 Ruby 语言的库来对图像进行操作,如编辑、转换、裁剪等。在这个特定的场景中,我们关注的是一个针对 Windows 操作系统的 Ruby Gem 安装包,它包含了 Rmagick 和 ImageMagick 这两个...

    ruby 移动图片小工具

    总的来说,这个“ruby移动图片小工具”展示了Ruby在文件操作、元数据处理和用户友好配置方面的灵活性。它为用户提供了便利,使得管理和组织大量的图片变得更加高效和自动化。如果你需要处理类似的问题,这个小工具或...

    Ruby-Ruby绑定ImageMagick

    `RMagick`是Ruby与ImageMagick之间的一个绑定库,它允许Ruby程序员充分利用ImageMagick的强大功能来处理图像。 RMagick的安装通常涉及到两个步骤:首先,你需要在系统上安装ImageMagick,然后通过Ruby的Gem包管理器...

    Ruby-上传图片到七牛云的简单demo

    在Ruby开发中,有时我们需要将图片或其他文件上传到云存储服务,例如七牛云。七牛云提供了一套完善的API接口,使得开发者可以方便地进行文件上传、管理等操作。本示例是一个简单的Ruby程序,演示了如何使用七牛云的...

    使用纯 Ruby测量图像大小_Ruby_代码_相关文件_下载

    使用纯 Ruby 测量图像大小。格式:apng, bmp, cur, gif, ico, j2c, jp2, jpeg, jpx, mng, pam, pbm, pcx, pgm, png, ppm, psd, svg, swf, tiff, webp, xbm, xpm. 更多详情、使用方法,请下载后阅读README.md文件

    Ruby-Mail一个Ruby邮件库

    Ruby-Mail是一个强大的Ruby库,专为处理电子邮件而设计。这个库使得在Ruby应用程序中创建、解析、发送和接收邮件变得轻而易举。Mail库提供了丰富的功能,包括解析MIME(多用途互联网邮件扩展)格式的邮件,支持附件...

    Ruby-DingTalkBot是阿里钉钉自定义机器人的Ruby库

    2. **发送富文本消息**:除了基础的文本消息,Ruby-DingTalkBot还支持发送包含链接、图片、markdown格式等富文本消息,使得信息展示更丰富、更具吸引力。 3. **自定义消息结构**:开发者可以根据需求构建自定义的...

    ruby插件.rar

    对于文件操作,`paperclip` 和 `carrierwave` 是常见的文件上传插件,它们方便地处理图片和其他文件的上传和存储。另外,`active_storage` 是 Rails 5.2 引入的内置文件处理系统,与 AWS S3 或其他云存储服务集成,...

    Ruby-MiniMagickImageMagick或GraphicsMagick命令行的一个ruby封装

    总的来说,MiniMagick是Ruby开发者在处理图像时的得力工具,它提供了简单易用的API,将ImageMagick和GraphicsMagick的强大功能封装在Ruby环境中。通过这个库,你可以高效地完成图像处理任务,而无需深入理解底层的...

    Ruby-Mittsu一个Ruby的3D图形库

    与其他图片处理库不同,Mittsu专注于3D内容的创建和展示,这使得它在需要立体感和深度的场景中尤其有用。 在实际应用中,你可以结合Sinatra或Rails这样的Web框架,将Mittsu集成到Web应用中,创建互动式的3D网页。...

    Ruby-Hanami是一个全栈的Ruby的Web框架

    9. **Hanami::Assets**:管理静态资源,如CSS、JavaScript和图片,提供压缩和合并功能,优化页面加载速度。 通过这些组件,开发者可以构建出高度解耦的、易于扩展的应用。Hanami的另一个亮点是它的命令行工具,它...

    Ruby-DragonFly一个高度可定制的rubygem处理图片和其他附件上传

    Ruby DragonFly 是一款强大的Ruby gem,专为处理图片和其他附件上传而设计,提供高度的定制性,使得开发者能够轻松地在应用程序中实现复杂的文件管理功能。这个库的核心目标是简化文件上传过程,同时保持灵活性,以...

    ruby on rail.pdf

    视图则使用嵌入式Ruby(ERB)模板,将Ruby代码与HTML混合,使界面呈现和数据处理紧密相连。 Rails还包含了一套丰富的工具集,如Action Mailer用于发送邮件,Action Cable支持实时Web应用,如聊天室或通知系统,得益...

    ruby-3.0.3软件下载

    开发者可以期待更流畅的开发体验,特别是在处理大量数据或运行长时间任务时。 在描述中提到,这个版本的Ruby是为编译Qt5源码而准备的。Qt是一个跨平台的C++图形用户界面应用程序开发框架,广泛用于桌面和移动应用。...

    Ruby-PSDrb在Ruby中轻松解析Photoshop文件

    这对于创建自定义的图片处理工作流程非常有用。 在处理像"layervault-psd.rb-a112904"这样的示例文件时,可能包含了一些具体的示例代码,展示了如何利用Ruby-PSDrb库进行特定的操作。例如,这个文件可能演示了如何...

    Ruby on Rails安装包全集(Linux)

    Ruby在处理字符串和正则表达式时会用到这个库。 3. **lighttpd-1.4.11.tar.gz**: Lighttpd是一个轻量级的Web服务器,适合用于资源有限的环境,如嵌入式设备或个人服务器。在Ruby on Rails开发中,它可以作为应用的...

    Ruby-Shrine用来处理文件上传的Ruby工具包

    Ruby-Shrine是一个强大的Ruby库,专门用于处理文件上传任务,为开发者提供了灵活、可扩展的解决方案。在Web应用中,文件上传是常见的功能,Shrine致力于简化这一过程,确保安全、可靠的文件处理。 Shrine的核心理念...

    ruby on rails最新版

    4. Asset Pipeline:管理应用的静态资源,如JavaScript、CSS和图片,支持压缩和合并以提高加载速度。 5. Rails发电机:自动化代码生成,帮助快速构建新模型、控制器、迁移等。 6. RESTful设计:鼓励使用HTTP动词来...

    Ruby on Rails入门经典代码

    - MVC架构:Rails的核心设计模式,模型负责数据处理,视图负责展示,控制器协调两者。 - Routes:Rails的路由系统将HTTP请求映射到控制器的相应动作,定义了应用的URL结构。 - ActiveRecord:ORM(对象关系映射)...

Global site tag (gtag.js) - Google Analytics