- 浏览: 329081 次
- 性别:
- 来自: 北京
文章分类
最新评论
将图片灰度化(有利于让亮的部分更亮,暗的部分更暗,容易用程序算法来处理,一般灰度值=0.3R+0.59G+0.11B)
将片灰度反转
demo
http://security.ctocio.com.cn/securitycomment/111/8706611.shtml
应该不可以,这个东东就是photoshop的命令行版本吧...图片处理的
是的,windows安装还算蛮顺利的。。。
我用来裁剪头像和加水印,你用来做什么?
convert in.jpg -colorspace GRAY out.jpg
将片灰度反转
convert -negate in.jpg out.jpg
demo
#!/home/software/ruby-1.8.4/bin/ruby -w # # Simple demo program for RMagick # # Concept and algorithms lifted from Magick++ demo script written # by Bob Friesenhahn. # require 'RMagick' include Magick # # RMagick version of Magick++/demo/demo.cpp # Font = "Helvetica" begin puts "Read images..." model = ImageList.new("images/model.miff") model.border_color = "black" model.background_color = "black" model.cur_image[:Label] = "RMagick" smile = ImageList.new("images/smile.miff") smile.border_color = "black" smile.cur_image[:Label] = "Smile" # # Create image stack # puts "Creating thumbnails" # Construct an initial list containing five copies of a null # image. This will give us room to fit the logo at the top. # Notice I specify the width and height of the images via the # optional "size" attribute in the parm block associated with # the read method. There are two more examples of this, below. example = ImageList.new 5.times { example.read("NULL:black") { self.size = "70x70"} } puts " add noise..." example << model.add_noise(LaplacianNoise) example.cur_image[:Label] = "Add Noise" puts " annotate..." example << model.cur_image.copy example.cur_image[:Label] = "Annotate" draw = Draw.new draw.annotate(example, 0, 0, 0, 20, "RMagick") { self.pointsize = 18; self.font = Font; self.stroke = "gold" self.fill = "gold" self.gravity = NorthGravity } puts " blur..." example << model.blur_image(0.0, 1.5) example.cur_image[:Label] = "Blur" puts " border..." example << model.border(6, 6, "gold") example.cur_image[:Label] = "Border" puts " channel..." example << model.channel(RedChannel) example.cur_image[:Label] = "Channel" puts " charcoal..." example << model.charcoal example.cur_image[:Label] = "Charcoal" puts " composite..." example << model.composite(smile, 35, 65, OverCompositeOp) example.cur_image[:Label] = "Composite" puts " contrast..." example << model.contrast(false) example.cur_image[:Label] = "Contrast" puts " convolve..." kernel = [ 1, 1, 1, 1, 4, 1, 1, 1, 1 ] example << model.convolve(3, kernel) example.cur_image[:Label] = "Convolve" puts " crop..." example << model.crop(25, 50, 80, 80) example.cur_image[:Label] = "Crop" puts " despeckle..." example << model.despeckle example.cur_image[:Label] = "Despeckle" puts " draw..." example << model.cur_image.copy example.cur_image[:Label] = "Draw" gc = Draw.new gc.fill "black" gc.fill_opacity 0 gc.stroke "gold" gc.stroke_width 2 gc.circle 60,90, 60,120 gc.draw(example) puts " edge..." example << model.edge(0) example.cur_image[:Label] = "Detect Edges" puts " emboss..." example << model.emboss example.cur_image[:Label] = "Emboss" puts " equalize..." example << model.equalize example.cur_image[:Label] = "Equalize" puts " explode..." example << model.implode(-1) example.background_color = "#000000ff" example.cur_image[:Label] = "Explode" puts " flip..." example << model.flip example.cur_image[:Label] = "Flip" puts " flop..." example << model.flop example.cur_image[:Label] = "Flop" puts " frame..." example << model.frame example.cur_image[:Label] = "Frame" puts " gamma..." example << model.gamma_correct(1.6) example.cur_image[:Label] = "Gamma" puts " gaussian blur..." example << model.gaussian_blur(1, 1.5) example.cur_image[:Label] = "Gaussian Blur" # To add an Image in one of ImageMagick's built-in formats, # call the read method. The filename specifies the format and # any parameters it needs. The gradient format can be created in # any size. Specify the desired size by assigning it, in the form # "WxH", to the optional "size" attribute in the block associated # with the read method. Here we create a gradient image that is # the same size as the model image. puts " gradient..." example.read("gradient:#20a0ff-#ffff00") { self.size = Geometry.new(model.columns, model.rows) } example.cur_image[:Label] = "Gradient" puts " grayscale..." example << model.cur_image.quantize(256, GRAYColorspace) example.cur_image[:Label] = "Grayscale" puts " implode..." example << model.implode(0.5) example.cur_image[:Label] = "Implode" puts " median filter..." example << model.median_filter(0) example.cur_image[:Label] = "Median Filter" puts " modulate..." example << model.modulate(1.10, 1.10, 1.10) example.cur_image[:Label] = "Modulate" puts " monochrome..." example << model.cur_image.quantize(2, GRAYColorspace, false) example.cur_image[:Label] = "Monochrome" puts " negate..." example << model.negate example.cur_image[:Label] = "Negate" puts " normalize..." example << model.normalize example.cur_image[:Label] = "Normalize" puts " oil paint..." example << model.oil_paint(3.0) example.cur_image[:Label] = "Oil Paint" # The plasma format is very similar to the gradient format, above. puts " plasma..." example.read("plasma:fractal") { self.size = Geometry.new(model.columns, model.rows) } example.cur_image[:Label] = "Plasma" puts " quantize..." example << model.cur_image.quantize example.cur_image[:Label] = "Quantize" puts " raise..." example << model.raise example.cur_image[:Label] = "Raise" puts " reduce noise..." example << model.reduce_noise(3.0) example.cur_image[:Label] = "Reduce Noise" puts " resize..." example << model.resize(0.50) example.cur_image[:Label] = "Resize" puts " roll..." example << model.roll(20, 10) example.cur_image[:Label] = "Roll" puts " rotate..." example << model.rotate(45).transparent("black") example.cur_image[:Label] = "Rotate" puts " scale..." example << model.scale(0.60) example.cur_image[:Label] = "Scale" puts " segment..." example << model.segment example.cur_image[:Label] = "Segment" puts " shade..." example << model.shade(false, 30, 30) example.cur_image[:Label] = "Shade" puts " sharpen..." example << model.sharpen(0.0, 1.0) example.cur_image[:Label] = "Sharpen" puts " shave..." example << model.shave(10, 10) example.cur_image[:Label] = "Shave" puts " shear..." example << model.shear(45, 45).transparent("black") example.cur_image[:Label] = "Shear" puts " spread..." example << model.spread(3) example.cur_image[:Label] = "Spread" puts " solarize..." example << model.solarize(50.0) example.cur_image[:Label] = "Solarize" puts " swirl..." temp = model.copy temp.background_color = "#000000ff" example << temp.swirl(90) example.cur_image[:Label] = "Swirl" puts " unsharp mask..." example << model.unsharp_mask(0.0, 1.0, 1.0, 0.05) example.cur_image[:Label] = "Unsharp Mask" puts " wave..." temp = model.copy temp.cur_image[:Label] = "Wave" temp.matte = true temp.background_color = "#000000ff" example << temp.wave(25, 150) # # Create image montage - notice the optional # montage parameters are supplied via a block # puts "Montage images..." montage = example.montage { self.geometry = "130x194+10+5>" self.gravity = CenterGravity self.border_width = 1 rows = (example.size + 4) / 5 self.tile = Geometry.new(5,rows) self.compose = OverCompositeOp # Use the ImageMagick built-in "granite" format # as the background texture. # self.texture = Image.read("granite:").first self.background_color = "white" self.font = Font; self.pointsize = 18; self.fill = "#600" self.filename = "RMagick Demo" # self.shadow = true # self.frame = "20x20+4+4" } # Add the ImageMagick logo to the top of the montage. The "logo:" # format is a fixed-size image, so I don't need to specify a size. puts "Adding logo image..." logo = Image.read("logo:").first if /GraphicsMagick/.match Magick_version then logo.resize!(200.0/logo.rows) else logo.crop!(98, 0, 461, 455).resize!(0.45) end # Create a new Image for the composited montage and logo montage_image = ImageList.new montage_image << montage.composite(logo, 245, 0, OverCompositeOp) # Write the result to a file montage_image.compression = RunlengthEncodedCompression montage_image.matte = false puts "Writing image ./rm_demo_out.miff" montage_image.write "rm_demo_out.miff" # Uncomment the following lines to display image to screen # puts "Displaying image..." # montage_image.display rescue puts "Caught exception: #{$!}" end exit
http://security.ctocio.com.cn/securitycomment/111/8706611.shtml
评论
16 楼
Hooopo
2010-03-15
http://www.luminous-landscape.com/tutorials/colour_theory.shtml
15 楼
Hooopo
2010-02-24
find + converthttp://www.perturb.org/display/entry/632/
14 楼
Hooopo
2010-01-12
压缩&&去多余信息:
convert -quality 70% -strip a.jpg b.jpg
13 楼
Hooopo
2009-12-10
12 楼
Hooopo
2009-12-09
引用
转换参数 -blur 和 -gaussian 有相同的参数:[半径]x[Sigma]。Sigma 值定义像素扩散的程度(看来起来更圆润),半径定义像素扩散的区域大小。
11 楼
Hooopo
2009-12-09
10 楼
Hooopo
2009-12-08
herowzz 写道
有没有跟opencv的比较?这个东东做机器视觉可以不?
应该不可以,这个东东就是photoshop的命令行版本吧...图片处理的
9 楼
herowzz
2009-12-08
有没有跟opencv的比较?这个东东做机器视觉可以不?
8 楼
Hooopo
2009-12-07
CharlesCui 写道
我靠,你也搞这个?
这玩意在Mac的雪豹64上安装超级复杂,我一直没有安装成功!
难受死了.
这玩意在Mac的雪豹64上安装超级复杂,我一直没有安装成功!
难受死了.
是的,windows安装还算蛮顺利的。。。
我用来裁剪头像和加水印,你用来做什么?
7 楼
CharlesCui
2009-12-07
我靠,你也搞这个?
这玩意在Mac的雪豹64上安装超级复杂,我一直没有安装成功!
难受死了.
这玩意在Mac的雪豹64上安装超级复杂,我一直没有安装成功!
难受死了.
6 楼
Hooopo
2009-12-07
5 楼
Hooopo
2009-12-07
此文档甚好!!http://www.imagemagick.org/Usage/thumbnails/#formats
4 楼
Hooopo
2009-12-07
引用
你将会发现,大部分的操作,你只要在终端下动动键盘即可,省得你用鼠标点来点去。
下面,我对ImageMagick的主要功能做一个简单的介绍,其中覆盖的大都是人们常用的一些功能,如果你要全面的了解它的知识,你可以看看它的man手册。
convert
convert顾名思义就是对图像进行转化,它主要用来对图像进行格式的转化,同时还可以做缩放、剪切、模糊、反转等操作。
格式转化
比如把 foo.jpg 转化为 foo.png:
convert foo.jpg foo.png
如果要想把目录下所有的jpg文件都转化为gif,我们可借助于shell的强大功能:
find ./ -name "*.jpg" -exec convert {} {}.gif \;
转化后的gif名称为 *.jpg.gif ,这样看起来不太自然,没关系,我们可以再来一步:
rename .jpg.gif .gif *.jpg.gif
本来,我想在find的时候,用basename来取得不带后缀的文件名的,这样就不会形成.jpg.gif这种丑陋的名子了,可是不知道为什么,就是不行,如果你知道的话,告诉我
或者,你也可用shell script来完成上述的操作:
for i in *.jpgdoconvert $i `basename $i .jpg`.gifdone
我们还可用mogrify来完成同样的效果:
mogrify -format png *.jpg
上面命令将会把目录下面所有的jpg文件转化为png格式。
convert还可以把多张照片转化成pdf格式:
convert *.jpg foo.pdf
大小缩放
比如我们要为一个普通大小的图片做一个缩略图,我们可以这样
convert -resize 100x100 foo.jpg thumbnail.jpg
你也可以用百分比,这样显的更为直观:
convert -resize 50%x50% foo.jpg thumbnail.jpg
convert会自动地考虑在缩放图像大小时图像的高宽的比例,也就是说着新的图像的高宽比与原图相同。
我们还可以批量生成缩略图:
mogrify -sample 80x60 *.jpg
注意,这个命令会覆盖原来的图片,不过你可以在操作前,先把你的图片备份一下。
加边框
在一张照片的四周加上边框,可以用 -mattecolor 参数,比如某位同志牺牲了,我们需要为他做一张黑边框的遗像,可以这样:
convert -mattecolor "#000000" -frame 60x60 yourname.jpg rememberyou.png
其中,"#000000"是边框的颜色,边框的大小为60x60
你也可以这样加边框:
convert -border 60x60 -bordercolor "#000000" yourname.jpg rememberyou.png
在图片上加文字
convert -fill green -pointsize 40 -draw 'text 10,50 "charry.org"' foo.png bar.png
上面的命令在距离图片的左上角10x50的位置,用绿色的字写下charry.org,如果你要指定别的字体,可以用-font参数。
模糊
高斯模糊:
convert -blur 80 foo.jpg foo.png
-blur参数还可以这样-blur 80x5。后面的那个5表示的是Sigma的值,这个是图像术语,我也不太清楚,总之,它的值对模糊的效果起关键的作用。
翻转
上下翻转:
convert -flip foo.png bar.png
左右翻转:
convert -flop foo.png bar.png
反色
形成底片的样子:
convert -negate foo.png bar.png
单色
把图片变为黑白颜色:
convert -monochrome foo.png bar.png
加噪声
convert -noise 3 foo.png bar.png
油画效果
我们可用这个功能,把一张普通的图片,变成一张油画,效果非常的逼真
convert -paint 4 foo.png bar.png
旋转
把一张图片,旋转一定的角度:
convert -rotate 30 foo.png bar.png
上面的30,表示向右旋转30度,如果要向左旋转,度数就是负数。
炭笔效果
convert -charcoal 2 foo.png bar.png
形成炭笔或者说是铅笔画的效果。
散射
毛玻璃效果:
convert -spread 30 foo.png bar.png
漩涡
以图片的中心作为参照,把图片扭转,形成漩涡的效果:
convert -swirl 67 foo.png bar.png
凸起效果
用-raise来创建凸边:
convert -raise 5x5 foo.png bar.png
执行后,你会看到,照片的四周会一个5x5的边,如果你要一个凹下去的边,把-raise改为+raise就可以了。其实凸边和凹边看起来区别并不是很大。
其他
其他功能都是不太常用的,如果你感兴趣的话,可以看它的联机文档
import
import是一个用于屏幕截图的组件,下面列出的是我们常用的功能,其他的功能,你参考它的man好了。
截取屏幕的任一矩形区域
import foo.png
在输入上述的命令后,你的鼠标会变成一个十字,这个时候,你只要在想要截取的地方划一个矩形就可以了
截取程序的窗口
import -pause 3 -frame foo.png
回车后,用鼠标在你想截的窗口上点一下即可。参数- frame的作用是告诉import,截图的时候把目标窗口的外框架带上,参数-pause的作用很重要,你可以试着把它去掉,对比一下,你会发现,目标窗口的标题栏是灰色的,pause就是让import稍微延迟一下,等你的目标窗口获得焦点了,才开始截图,这样的图才比较自然。
截取一个倾斜的窗口
如果想让你的截图比较cool,你可以把截取一个倾斜的窗口,方法如下:
import -rotate 30 -pause 3 -frame foo.png
截取整个屏幕
import -pause 3 -window root screen.png
注意,暂停了3秒钟,你需要在3秒钟内切换到需要截取的画面噢。
display
display应该是我们***的最为频繁的图像处理软件了,毕竟,还是看的多
显示图片
display foo.png
如果你要显示多个文件,你可以***通配符
display *.png
幻灯片
display -delay 5 *
每隔5个百分之秒显示一张图片
一些快捷键
space(空格): 显示下一张图片
backspace(回删键):显示上一张图片
h: 水平翻转
v: 垂直翻转
/:顺时针旋转90度
\:逆时针旋转90度
>: 放大
<: 缩小
F7:模糊图片
Alt+s:把图片中间的像素旋转
Ctrl+s:图象另存
Ctrl+d:删除图片
q: 退出
其他
ImageMagick还提供有丰富的编程接口,比如,你可以用php来调用它,用ImageMagick来生成验证码图片,效果非常棒。
ImageMagick还有一个小工具identify,它可以用来显示一个图片文件的详悉信息,比如格式、分辨率、大小、色深等等,你都可用它来帮你的忙。
如果你对命令行不太熟悉,你也可以在图片上单击,你会发现,通过鼠标你也可以完成图像的编辑。
ImageMagick的网站:www.imagemagick.org。这里是ImageMagick加工过的图片的例子。
下面,我对ImageMagick的主要功能做一个简单的介绍,其中覆盖的大都是人们常用的一些功能,如果你要全面的了解它的知识,你可以看看它的man手册。
convert
convert顾名思义就是对图像进行转化,它主要用来对图像进行格式的转化,同时还可以做缩放、剪切、模糊、反转等操作。
格式转化
比如把 foo.jpg 转化为 foo.png:
convert foo.jpg foo.png
如果要想把目录下所有的jpg文件都转化为gif,我们可借助于shell的强大功能:
find ./ -name "*.jpg" -exec convert {} {}.gif \;
转化后的gif名称为 *.jpg.gif ,这样看起来不太自然,没关系,我们可以再来一步:
rename .jpg.gif .gif *.jpg.gif
本来,我想在find的时候,用basename来取得不带后缀的文件名的,这样就不会形成.jpg.gif这种丑陋的名子了,可是不知道为什么,就是不行,如果你知道的话,告诉我
或者,你也可用shell script来完成上述的操作:
for i in *.jpgdoconvert $i `basename $i .jpg`.gifdone
我们还可用mogrify来完成同样的效果:
mogrify -format png *.jpg
上面命令将会把目录下面所有的jpg文件转化为png格式。
convert还可以把多张照片转化成pdf格式:
convert *.jpg foo.pdf
大小缩放
比如我们要为一个普通大小的图片做一个缩略图,我们可以这样
convert -resize 100x100 foo.jpg thumbnail.jpg
你也可以用百分比,这样显的更为直观:
convert -resize 50%x50% foo.jpg thumbnail.jpg
convert会自动地考虑在缩放图像大小时图像的高宽的比例,也就是说着新的图像的高宽比与原图相同。
我们还可以批量生成缩略图:
mogrify -sample 80x60 *.jpg
注意,这个命令会覆盖原来的图片,不过你可以在操作前,先把你的图片备份一下。
加边框
在一张照片的四周加上边框,可以用 -mattecolor 参数,比如某位同志牺牲了,我们需要为他做一张黑边框的遗像,可以这样:
convert -mattecolor "#000000" -frame 60x60 yourname.jpg rememberyou.png
其中,"#000000"是边框的颜色,边框的大小为60x60
你也可以这样加边框:
convert -border 60x60 -bordercolor "#000000" yourname.jpg rememberyou.png
在图片上加文字
convert -fill green -pointsize 40 -draw 'text 10,50 "charry.org"' foo.png bar.png
上面的命令在距离图片的左上角10x50的位置,用绿色的字写下charry.org,如果你要指定别的字体,可以用-font参数。
模糊
高斯模糊:
convert -blur 80 foo.jpg foo.png
-blur参数还可以这样-blur 80x5。后面的那个5表示的是Sigma的值,这个是图像术语,我也不太清楚,总之,它的值对模糊的效果起关键的作用。
翻转
上下翻转:
convert -flip foo.png bar.png
左右翻转:
convert -flop foo.png bar.png
反色
形成底片的样子:
convert -negate foo.png bar.png
单色
把图片变为黑白颜色:
convert -monochrome foo.png bar.png
加噪声
convert -noise 3 foo.png bar.png
油画效果
我们可用这个功能,把一张普通的图片,变成一张油画,效果非常的逼真
convert -paint 4 foo.png bar.png
旋转
把一张图片,旋转一定的角度:
convert -rotate 30 foo.png bar.png
上面的30,表示向右旋转30度,如果要向左旋转,度数就是负数。
炭笔效果
convert -charcoal 2 foo.png bar.png
形成炭笔或者说是铅笔画的效果。
散射
毛玻璃效果:
convert -spread 30 foo.png bar.png
漩涡
以图片的中心作为参照,把图片扭转,形成漩涡的效果:
convert -swirl 67 foo.png bar.png
凸起效果
用-raise来创建凸边:
convert -raise 5x5 foo.png bar.png
执行后,你会看到,照片的四周会一个5x5的边,如果你要一个凹下去的边,把-raise改为+raise就可以了。其实凸边和凹边看起来区别并不是很大。
其他
其他功能都是不太常用的,如果你感兴趣的话,可以看它的联机文档
import
import是一个用于屏幕截图的组件,下面列出的是我们常用的功能,其他的功能,你参考它的man好了。
截取屏幕的任一矩形区域
import foo.png
在输入上述的命令后,你的鼠标会变成一个十字,这个时候,你只要在想要截取的地方划一个矩形就可以了
截取程序的窗口
import -pause 3 -frame foo.png
回车后,用鼠标在你想截的窗口上点一下即可。参数- frame的作用是告诉import,截图的时候把目标窗口的外框架带上,参数-pause的作用很重要,你可以试着把它去掉,对比一下,你会发现,目标窗口的标题栏是灰色的,pause就是让import稍微延迟一下,等你的目标窗口获得焦点了,才开始截图,这样的图才比较自然。
截取一个倾斜的窗口
如果想让你的截图比较cool,你可以把截取一个倾斜的窗口,方法如下:
import -rotate 30 -pause 3 -frame foo.png
截取整个屏幕
import -pause 3 -window root screen.png
注意,暂停了3秒钟,你需要在3秒钟内切换到需要截取的画面噢。
display
display应该是我们***的最为频繁的图像处理软件了,毕竟,还是看的多
显示图片
display foo.png
如果你要显示多个文件,你可以***通配符
display *.png
幻灯片
display -delay 5 *
每隔5个百分之秒显示一张图片
一些快捷键
space(空格): 显示下一张图片
backspace(回删键):显示上一张图片
h: 水平翻转
v: 垂直翻转
/:顺时针旋转90度
\:逆时针旋转90度
>: 放大
<: 缩小
F7:模糊图片
Alt+s:把图片中间的像素旋转
Ctrl+s:图象另存
Ctrl+d:删除图片
q: 退出
其他
ImageMagick还提供有丰富的编程接口,比如,你可以用php来调用它,用ImageMagick来生成验证码图片,效果非常棒。
ImageMagick还有一个小工具identify,它可以用来显示一个图片文件的详悉信息,比如格式、分辨率、大小、色深等等,你都可用它来帮你的忙。
如果你对命令行不太熟悉,你也可以在图片上单击,你会发现,通过鼠标你也可以完成图像的编辑。
ImageMagick的网站:www.imagemagick.org。这里是ImageMagick加工过的图片的例子。
3 楼
Hooopo
2009-12-07
2 楼
Hooopo
2009-12-07
Image Magick中文站:http://www.imagemagick.com.cn/
1 楼
yuan
2009-12-06
相关推荐
ImageMagick 是一个图象处理软件。它可以编辑、显示包括JPEG、TIFF、PNM、PNG、GIF和Photo CD在内的绝大多数当今最流行的图象格式。你可以改变图象尺寸、旋转、锐化等多种操作,功能强大
这是一个非常简单的格式转换代码,可以把.PDF文件转换为.JPG文件,代码要起作用,服务器必须要安装Image Magick 扩展。 $pdf_file = './pdf/demo.pdf'; $save_to = './jpg/demo.jpg'; //make sure that apache has ...
#include <Magick++/Image.h> #include <Magick++/Drawable.h> #include #include #define MAGICKCORE_QUANTUM_DEPTH 16 #define MAGICKCORE_HDRI_ENABLE 1 //#define _GLIBCXX_USE_CXX11_ABI 0L #define BI_RGB...
Magick.NET图像操作库 包含 64与32 位
BatchResize是Image Magick的前端,可在不增加开销的情况下尽快调整图像大小。 它使用Qt库以C ++进行编码,并根据GPL v3.0许可进行分发。
Magick.NET类库,.net平台操作图片
步骤 1 - 克隆存储库: 从命令行,克隆存储库: $ git clone https://github.com/bilgehanertan/image-resize-magick第 2 步 - 在 index.js 中更改所需的 3 个变量在 index.js 中,根据需要更改这些变量。...
Magick Image Reader是的扩展,它增加了对不离开应用程序的情况下读取支持。 它的主要用途是在管理映像存储库时快速访问映像,而无需离开Visual Studio代码或打开其他程序。 如果没有像和这样的免费和开源软件,这...
imagemagic.aspjzy.rar
Magick++使用教程
Magick++ api文档,ImageMagick是强大的开源的图像处理库,提供多种语言的接口。
可用的C#版 Magick.NET(dll),此版本包含通过加载图片后获取到64位的图片签名。可用于对图片进行完整的比对,对于需要开发图片库的伙伴有福了。
Pascal Magick Image Process
magick.Net-7.4.3.0源码,C#版,此版本包含通过加载图片后获取到图片签名。可用于对图片进行完整的比对。
通过Image Magick/mogrify/GIMP/exiftool等工具来"convert"或"mogrify"图片,删除png图片中内嵌的iCCP profile sRGB: Image Magick使用举例: 删除单个png文件内的profile: % convert -strip <input filename> ...
能实现图像亮度的变换 可以变换不同的灰度值
Lipo是基于的免费图像处理API服务是否需要 , , 或PhantomJS的替代产品? •由和构建Lipo是Sharp的跨平台和即插即用的替代品目录安装用法限速背景自我部署有关... log ( 'resized image' ) ; } ) ; Lipo是Sharp的直接
可用的C#版 Magick.NET(dll),此版本包含通过加载图片后获取到图片签名。可用于对图片进行完整的比对。
ImageMagick的.NET库:Magick.NET ImageMagick是功能强大的图像处理库,支持超过(不包括子格式)。 使用Magick.NET,您可以在C#/ VB.NET / .NET Core应用程序中使用ImageMagick,而不必在服务器或台式机上安装...