Linux命令行處理圖片方式(圖片格式轉(zhuǎn)換、縮放、旋轉(zhuǎn)等)
Linux命令行處理圖片
Centos OS 中默認安裝了 ImageMagick,ImageMagick 是一系列的用于修改、加工圖像的命令行工具。
ImageMagick 功能十分強大,本博文主要介紹自己在做實驗過程中用得比較多的幾個操作,更多更豐富的功能,讀者可自行參考 ImageMagick 文檔。
1. 轉(zhuǎn)換圖像格式
如下實例,將一個 JPG 格式的圖片轉(zhuǎn)換為 PNG 格式的圖片:
convert imgyd064_R1_9_t_1.jpg imgyd064_R1_9_t_1.png
圖片原名為 imgyd064_R1_9_t_1.jpg,是一張植物葉片的圖像,經(jīng)過轉(zhuǎn)換后變?yōu)?png 格式文件,轉(zhuǎn)化之后雖然表面看不出大的變化,但是圖片大小明顯增大 了(1.6M增至6.6M),這說明格式發(fā)生了根本性的轉(zhuǎn)換,如下所示:
2. 縮放圖像
下面的命令將一幅 2914x2914 的圖像縮小為 100x100 的圖像:
convert imgyd064_R1_9_t_1.jpg -resize 200x100 imgyd064_R1_9_t_1_resize.jpg
也許此時你會有疑問,為什么指定的是200x100,圖像卻變成了100x100,在使用這個命令的時候,ImageMagick 會盡量保持圖像的縱橫比。
它將會調(diào)整圖像以適應(yīng)200×100的區(qū)域,這樣圖像就不是恰好200×100了。
如果你想要強制把圖像設(shè)置為指定的大小,即使這樣做會改變圖像的縱橫比的話,那么在尺寸參數(shù)后面加一個嘆號就可以了。
convert imgyd064_R1_9_t_1.jpg -resize 200x100! imgyd064_R1_9_t_1_resize.jpg
注:命令行中的200x100中的“x”為字母 x
3. 旋轉(zhuǎn)圖像
下面的命令將圖像順時針旋轉(zhuǎn)90度:
convert imgyd064_R1_9_t_1.jpg -rotate 90 imgyd064_R1_9_t_1_rotate.jpg
以上只是冰山一角,ImageMagick 還有很多其他用法,非常強大,如果讀者對 ImageMagick 的其他功能感興趣,可以自行查閱其官方文檔。
Linux命令行批處理圖片,批量去除截圖的無用部分
我希望產(chǎn)生一批相同區(qū)域但不同內(nèi)容的截圖,如果用截圖工具截取矩形區(qū)域,那么每次截取的位置和大小都沒法控制,不能做到區(qū)域一樣。如果希望每次的截圖都一樣,那么就只能是保持窗口大小不變?nèi)缓蠼厝≌麄€窗口,但是又希望能夠去掉窗口的標題欄、工具欄等,去掉這些東西之后的截圖還應(yīng)該保持一樣的區(qū)域。就需要有一個工具可以自動編輯圖片,對所有截圖執(zhí)行相同的編輯,這樣就能得到我想要的結(jié)果了。
幸運的是,Linux 有這樣的工具,就是 mogrify,Ubuntu 18 已經(jīng)預(yù)裝了該工具,直接使用就可以了,比如要實現(xiàn)我上面的要求,只需要輸入:
mogrify -crop 860x800+80+100 *.png
除了可以批量編輯大小外,還可以轉(zhuǎn)換格式等,功能貌似很強大,網(wǎng)址:http://www.imagemagick.org/script/mogrify.php。
比如執(zhí)行上述命令后可以把截圖:
截取其中的有效部分:
我有十幾張這樣的截圖,一條命令行全部處理完成,截取的區(qū)域一模一樣,可以把這十幾張截圖做成視頻來播放,就變成動態(tài)的波形了。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux .htaccess 設(shè)置 404 等錯誤頁面
linux服務(wù)器下通過設(shè)置htaccess來實現(xiàn)404轉(zhuǎn)向的代碼2008-06-06