Just another Ruby porter,

〜2014年6月下旬〜


<Older(,) | Newer(.)> | Recent(/)>> | RDF

2014-06-21 (Sat)

convertで頑固なシミを除去

convertのtrimは便利だがしつこいシミを消そうとfuzzの値を上げていくと、
思わぬところで食い込んでしまう。
blurでぼかしてしまえばfuzzの値はあまり大きくしなくてもよくなる。
ただ全体的にぼけてしまうのはいただけない。そこで例の-formatの出番だ。

% convert bar.png -blur 1 -fuzz 30% -trim -format "%wx%h%X%Y" info:
727x420+64+81

この結果を使って再度convertでcropすればぼけてないtrim画像へ変換できる。

% convert bar.png -crop 727x420+64+81 bar1.png

先日のように実行できる形式を吐かせて、shにそのまま食わせてもいい。

% convert bar.png -blur 1 -fuzz 30% -trim -format "convert %f -crop %wx%h%X%Y %t1.png" info:
convert bar.png -crop 727x420+64+81 bar1.png
% convert bar.png -blur 1 -fuzz 30% -trim -format "convert %f -crop %wx%h%X%Y %t1.png" info: | sh

2回convertを使うことになるが、結構シミには強くなる。


2014-06-22 (Sun)

convert -sharpenの値

適当に-shapen 5とか使っていたが、これが結構時間食う。
というわけで1から5まで値を変えて画像を見てみる。

% mkdir -p deskew40 s{1..5}
% convert '{}' -deskew 40% +repage -verbose deskew40/'{}' ::: *.png
% parallel convert '{}' -sharpen 1 +repage -verbose s1/'{/}' ::: deskew40/*.png
  57.57s user 4.63s system 361% cpu 17.199 total
% parallel convert '{}' -sharpen 2 +repage -verbose s2/'{/}' ::: deskew40/*.png
  89.49s user 4.91s system 365% cpu 25.826 total
% parallel convert '{}' -sharpen 3 +repage -verbose s3/'{/}' ::: deskew40/*.png
  136.69s user 4.88s system 366% cpu 38.604 total
% parallel convert '{}' -sharpen 4 +repage -verbose s4/'{/}' ::: deskew40/*.png
  210.94s user 5.29s system 369% cpu 58.496 total
% parallel convert '{}' -sharpen 5 +repage -verbose s5/'{/}' ::: deskew40/*.png
  335.51s user 6.38s system 372% cpu 1:31.84 total
% convert {,deskew40/,s{1..5}/}010.png'[100x300+100+100]' -border 1 +append \
  \( -gravity center -size 100x20 label:original label:'-deskew 40%' label:'-sharpen '{1..5} -border 1 +append \) \
  -append ~/jarp/images/sharpens.png

1で十分だな。2以上にしても違いがわからん。


2014-06-23 (Mon)

sshで規則性のあるホスト名でドメインを省略する

たとえばfoo01.hoge.notwork.orgのように01から規則的に増えるホストがあった場合、
~/.ssh/configに

Host foo*
  HostName %h.hoge.notwork.org
  User hoge

のようなエントリーを用意すれば、
ssh foo50でちゃんとfoo50.hoge.notwork.orgへつないでくれるようだ。

% ssh -v foo50
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /home/eban/.ssh/config
debug1: /home/eban/.ssh/config line 194: Applying options for foo*
debug1: /home/eban/.ssh/config line 197: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Hostname has changed; re-reading configuration
debug1: Reading configuration data /home/eban/.ssh/config
debug1: /home/eban/.ssh/config line 194: Applying options for foo*
debug1: /home/eban/.ssh/config line 197: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: auto-mux: Trying existing master
debug1: Control socket "/home/eban/.ssh/master-hoge@foo50.hoge.notwork.org:22" does not exist
ssh: Could not resolve hostname foo50.hoge.notwork.org: Name or service not known

まあ、実際には存在しないので最終的には失敗するが、
何度か読み直して補完されてることがわかる。


2014-06-24 (Tue)

OutlookからiCalendar

gistに置いた。
参加者と本文を入れてみた。しかし参加者はメールアドレスが取れなかったので中途半端。

TTENDEE;ROLE=REQ-PARTICIPANT:#{e.RequiredAttendees}
DESCRIPTION:#{e.Body.gsub(/\r?\n/, '\n')}

本文は複数行になるが、改行は'\n'にすればok。


2014-06-25 (Wed)

en_US.UTF-8

en_US.UTF-8の世界では大文字小文字は同一視されるようで、sortの並びが違う。

% mkdir tmp
% touch tmp/{a,b,A,B}
% ls tmp
A  B  a  b
% LC_ALL=en_US.UTF-8 ls tmp
a  A  b  B
% echo a b A B | xargs -n1
a
b
A
B
% echo a b A B | xargs -n1 | sort                                                    
A
B
a
b
% echo a b A B | xargs -n1 | LC_ALL=en_US.UTF-8 sort
a
A
b
B

変えなければ問題にならないが、commを使ってるときは注意。
sortされてないと見做されてしまう。


2014-06-26 (Thu)

GNU Parallelに補足される

新しいバージョンのGNU Parallelがリリースされたようだ。
GNU Parallel - build and execute command lines from standard input in parallel - ニュース: GNU Parallel 20140622 ('Brazil') released [Savannah]
それはいいとしてなぜか 先日書いた記事がNewに載ってた。
ちょっとびっくりした。
なんか他にもいっぱいあるし見つけた記事をリリース時に紹介してるんだな。


2014-06-27 (Fri)

Gガイド.テレビ王国のRSSがなんかおかしい

世界ネコ歩きを見逃がさないために検索結果をRSSにしてiftttでメールを送ってるんだけど、
最近どうも本文がおかしい。NHK BSのはずがなぜかチャンネル銀河と出てくる。
どういうことかとRSSを直接見てみるとdescriptionがそうなっていた。

<item rdf:about="http://tv.so-net.ne.jp/schedule/400664201407021245.action?from=rss">
  <title>岩合光昭の世界ネコ歩きmini「ネコパンチ」</title>
  <link>http://tv.so-net.ne.jp/schedule/400664201407021245.action?from=rss</link>
  <description>7/2 12:45~13:00 [チャンネル銀河 歴史ドラマ・サスペンス・日本のうた(Ch.664)]</description>
  <dc:subject>
      趣味/教育
  </dc:subject>
  <dc:date>2014-07-02T12:45+09:00</dc:date>
</item>

なんでそうなるの?って、ああ、本当にチャンネル銀河でやってるんだ。
そんなdescripionじゃ間違いだと思うじゃないか。
見れないのでiftttでNHKだけ通すようにしよう。


2014-06-28 (Sat)

同じ名前のmv

すでに名前で同じ構造を持つディレクトリへmvできないかと試していたが、
あらかじめ消さないかぎり無理だとわかった。
上書きでいいんだけど。次善の策としては--backup=numberedかな。

% LANG=C tree foo backups
foo
`-- bar
backups
`-- foo
    `-- bar

1 directory, 2 files
% mv foo backups 
mv: `foo' から `backups/foo' へ移動できません: ディレクトリは空ではありません
% mv --backup=numbered foo backups
% LANG=C tree backups    
backups
|-- foo
|   `-- bar
`-- foo.~1
`-- bar 2 directories, 2 files

失敗するよりはいいというだけだが。


2014-06-29 (Sun)

tmuxでsplitして等間隔に並べる

split-windowしたら必ずselect-layout even-verticalするので、
だったらいっしょにしたらいいんじゃないかと

% tmux split-window; tmux select-layout even-vertical

としていたが、

% tmux split-window \; select-layout even-vertical

のように一度で済むようだ。


2014-06-30 (Mon)

上半期M-ONで聴いた曲TOP10

突然ではあるが、集計してみた。1月ぐらいから毎回聴くたびにカウントしていたのだ。

     1	48	ハナミズキ / 一青窈
     2	48	366日 / HY
     3	47	恋するフォーチュンクッキー / AKB48
     4	46	奏(かなで) / スキマスイッチ
     5	42	春風 / Rihwa
     6	39	RPG / SEKAI NO OWARI
     7	32	レット・イット・ゴー ~ありのままで~ / 松たか子
     8	31	グロテスク feat. 安室奈美恵 / 平井堅
     9	30	小さな恋のうた / MONGOL800
    10	29	栄光の架橋 / ゆず

2番目は聴いた回数である。
当初恋チュンが断トツかと思ったら、じわじわとハナミズキと366日が上がってついに先週逆転した。
この懐しい曲はうたまっぷとカラオケで強い。366日はさらにTSUTAYAでも強い。


<Older(,) | Newer(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!