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