我可以通過
將一個影像轉換為像素坐標和顏色。convert myimage.png txt:
...
7,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
8,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
9,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
10,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
11,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
12,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
13,20: (200,251,251,255) #C8FBFBFF srgba(200,251,251,1)
14,20: (0,0,0,255) #000000FF 黑色
15,20: (133,81,20,255) #855114FF Srgba(133,81,20,1)
16,20: (0,0,0,255) #000000FF 黑色
...
我怎么能
在一個.txt檔案中,只用一行就可以得到像素坐標和十六進制列,而不需要換行? 就像
7,20,#C8FBFBFF 8,20,#C8FBFBFF 9,20,#C8FBFBFF.../code>
將文本檔案轉換為影像檔案? 類似于
convert pixel.txt image.png
uj5u.com熱心網友回復:
你可以在ImageMagick中使用Awk和其他Unix命令來做到這一點,如下:
convert myimage.png txt: | tail -n 2 | awk '{print $3}' | tr ":" "," | tr "
" " "
尾巴跳過第一行。
awk列印出第一個和第三個用空格分隔的字串
第一個tr將:改為,
第二個tr將新行
為簡單的空格
例子:
convert lena.png[10x10 0 0] txt: | tail -n 2 | awk '{print $3}' | tr ":" "," | tr "
" " "
0,0,#E2897C 1,0,#E08982 2,0,#E18779 3,0,#E48679 4,0,#E38A7D 5,0,#E2877A 6,0,#E18672 7,0,#DF8776 8,0,#DD836E 9,0,#DE8976 0,1,#E2897C 1,1。 #E08983 2,1,#E18779 3,1,#E48679 4,1,#E38A7E 5,1,#E2877B 6,1,#E18672 7,1,#DF8777 8,1,#DD836F 9,1,#DE8A76 0,2,#E28A7C 1,2,#E0887F 2,2,#E18778 3,2,#E48679 4。 2,#E38979 5,2,#E38577 6,2,#E08572 7,2,#E08573 8,2,#DD836D 9,2,#DE8774 0,3,#E4897A 1,3,#E18672 2,3,#E18676 3,3,#E58470 4,3,#E38571 5,3,#E38675 6,3, #e28169 7,3,#e07e69 8,3,#e0816d 9,3,#e0826c 0,4,#e0826d 1,4,#df846e 2,4,#e08474 3,4,#e28370 4,4,#e28675 5,4,#e18473 6,4,#e0846c 7,4,#e27f6c 8,4,#e37f6c 9,4。 #e0836c 0,5,#df8268 1,5,#df856d 2,5,#e2836c 3,5,#e27c6b 4,5,#e1836e 5,5,#e2836e 6,5,#e1836e 7,5,#e2826c 8,5,#e38169 9,5,#e1816e 0,6,#e2836f 1,6,#e2836f 2。 6,#e3836c 3,6,#e27f6d 4,6,#e1836e 5,6,#e1846b 6,6,#e38168 7,6,#e2826b 8,6,#e3846c 9,6,#e08370 0,7,#e4846d 1,7,#e2846e 2,7,#e2836c 3,7,#e38469 4,7。 #e1826c 5,7,#e18267 6,7,#e3836c 7,7,#e28169 8,7,#e2836c 9,7,#e2816f 0,8,#e38272 1,8,#e2836e 2,8,#e1836d 3,8,#e18069 4,8,#e1826a 5,8,#e38368 6,8,#e2836e 7。 8,#e1826b 8,8,#e28066 9,8,#e48169 0,9,#e2826f 1,9,#e0826d 2,9,#e0846f 3,9,#e17f6a 4,9,#e28369 5,9,#e38269 6,9,#e38367 7,9,#e3856d 8,9,#e48467 9,9,#e2856b
附件
如果你想從串列中回到一個影像,那么把串列放入一個字串變數。然后回顯這個字串,用管道連接到sed,將",#"改為 "#"。然后用管道回到轉換,在那里你可以用-sparse-color voronoi把它畫在一個黑色的背景影像上。如果你沒有每個像素來填充背景影像,那么它將使用voronoi插值來填充。
# 從坐標和十六進制顏色的串列中創建字串
str=`convert lena.png[10x10 0 0] txt: | tail -n 2 | awk '{print $3}' | tr ":" "," | tr "
" " "`
# 將字串轉換為影像
echo $str | sed 's/, [#]/ #/g' | convert -size 10x10 xc:black -sparse-color voronoi @- x.png
參見https://legacy.imagemagick.org/Usage/canvas/#sparse-color
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/309085.html
標籤:
