その漫画自炊オタクはImageJマクロに恋をする

プログラミングを用いた、自炊漫画の画像処理

傾きをまっすぐに補正するためのMacro

 

f:id:yu3xx:20200624014555j:plain

 

傾いてしまった画像に、「正しい垂線」を引くことで、まっすぐに回転・補正するためのマクロです。

  

 

//Tilt_Correction.txt

setTool("line");
waitForUser("Draw a line","Draw a \"True\" vertical line, then click [OK].");
getLine(x1, y1, x2, y2, lineWidth);

//calculate angle
g = (y2-y1)/(x2-x1);
angle = atan(g)*180/PI;
if(g>0) modAngle = 90-angle;
if(g<0) modAngle = -90-angle;

showMessageWithCancel("Tilt Correction","Rotate Image");

//fill background with white
setBackgroundColor(255, 255, 255);

run("Rotate... ", "angle=modAngle grid=1 interpolation=Bicubic fill");
print("Rotated by",modAngle,"degrees");

//reset background color (black)
setBackgroundColor(0, 0, 0);

 

 

使い方

① 傾いてしまった画像をImageJで開く。

② マクロ「Tilt_Correction.txt」を起動させる。

(ショートカットに登録しておくとラク。マクロをインストール(再起動)したあと、上部タブ[Plugins]→[Shortcuts]→[Add shortcut]。私の場合はF12に入れています。)

③ 正しい垂線を引いて、[OK]クリック。

④ 画像が回転される。良ければ上書き保存や[File]→[Save As]等で保存する。

 

 

 本来は「完全自動処理!」にしたいところですが、残念ながらそこまでのテクニックは無いので「ほぼ手動」です。

 

2020.04.16. 追記

念願の「完全自動処理タイプ」も作成しましたので、こちらもチェックしてみてください。

 

マクロの起動方法

①ImageJ上部タブの[Plugins]→[New]→[Macro]で起動したエディタに、記事の一番上のコードをコピペしてtxtファイル(Tilt_Correction.txt)を作成・保存する。 

 

②保存したファイルをImageJフォルダ内の[plugins]フォルダにしまう。

このとき、[plugins]フォルダの中に新たに適当な名前のフォルダを作って、その中にしまってもOKです。ここでは仮に「自炊」というフォルダにtxtファイルを突っ込んだとします。

 

③一度ImageJを再起動すると、マクロがインストールされ、起動準備OK。

 

④上部タブ[Plugins]→[自炊]→[Tilt Correction]でマクロが実行されます。

(オススメはショートカットから起動です!)

 

 

imagej-jisui.hatenablog.com

 

 

 

 

ライセンスなんかは一切無いので、ぜひぜひ自由に使ってみてください!

 

imagej-jisui.hatenablog.com