スポット除去ーその1(darktable第9回)

パラメトリックマスクの続きを説明する前に、スポット除去を試してみます。

ハスの花の画像は、darktableの例題と同じように、中央に赤い花、周辺が緑の画像を撮影したつもりでした。

でも、よく見ると右上に、小さな赤い花が写ってしまっています。この部分を取り除くようにトリミングをかけてもいのですが、ここでは、いわゆるゴミ取りツールを試してみたいと思います。

スポット除去の仕組み

スポット除去は、画像中のある領域を別の領域にコピーする仕組みです。コピー元をソース、コピー先をターゲットと呼びます。ここで、ゴミのある領域をコピー先、ターゲット領域とすれば、スポット除去は、ゴミのある領域の画像をゴミのないソースのデータで置き換える仕組みになります。ただし、単純に切り貼りすると、継ぎ目が目立つので、継ぎ目の部分にはグラデーションがかかるようになっています。

この置き換えが複数ある場合、次の2つのCaseが考えられます。

  1. 1つの置き換え毎に、ソースとターゲット領域を設定する。(Case1)

  2. ソース領域は共通で、置き換え毎にターゲット領域のみを変化させる。(Case2)

置き換えは、gimpなどのスタンプツールと同じ機能ですが、スタンプという場合には、Case2が想定されることが多いと思います。

 

f:id:computer_philosopher:20191019205538p:plain

置き換えのCase

 

 

領域の設定には、ソースとターゲット領域でマウスをクリックするように、ソフトウェアを設計するのが素直でしょう。そうしますと、インターフェースの設計では、上の、1.、2.をどのように区別するか、2回クリックして、位置を指定する場合に、ソースとターゲットをどのようなインターフェースで区別しているかが腕の見せ所になります。具体的には、後者のソースとターゲットの区別は、次図に示すように次のような課題になります。

  • オブジェクト指向で考えれば、関心の中心は、ゴミのあるターゲット領域なので、最初の位置決めで、ターゲット領域を、2番目にソース領域を指定するインターフェースが分かりやすいと思われます。(TypeA)

  • 上記のCase2のように、複数の置換で、ソース領域を共有するのであれば、利用頻度は、ターゲット領域より、ソース領域が高くなります。ですから、1回目の位置指定で、ソース領域を、2回目の位置指定でターゲット領域を指定し、3回目以降では、ターゲット領域のみをしてするインターフェースがよいと思われます。(TypeB)

このような問題意識をもって操作方法をみていただければ、なぜ、そうしたインターフェースになっているかが納得できると思いまます。

ターゲット、ソースの順番をTypeA、ソース、ターゲットの順番をTypeBとすると、Caseと組み合わせて、次の表の組み合わせが考えられます。Case2はソースを共有するので、TypeA2はありえないので、3種類の組み合わせになります。

TypeB2では、ソースが共有されるので、2つ目の変換では、ターゲット領域だけを指定すればよく、3回目のクリックだけで済みます。

ソース、ターゲットの順にマウス操作をするTypeBで、Case1の場合には、以上の組み合わせが、実際にdarktableで可能です。操作を表にまとめておきます。

  TypeB1では、実際には、2回目以降の置き換えでは、1クリックで、1回目と同じソースとターゲットの形が現れます。この図形は平行移動できます。

f:id:computer_philosopher:20191019205658p:plain

置き換えのType その1

 

f:id:computer_philosopher:20191019210002p:plain

置き換えのType その2

 

f:id:computer_philosopher:20191019210047p:plain

置き換えのType その3

 

 

3種類の操作は、左クリックだけ、左クリック+SHIFT、左クリック+SHIFT+CNTLで使い分けます。2回目以降の変換では、その前の操作が、左クリック+SHIFTまたは、左クリック+SHIFT+CNTLの場合、左クリック操作だけで、1回目の操作が繰り返されます。

f:id:computer_philosopher:20191019210138p:plain

キー操作

ちょっと寄り道をしてスポット除去の説明を加えようとおもったのですが、マウス操作が複雑で、てこずってしまいました。マニュアルでは、左クリック+SHIFTを相対位置、左クリック+SHIFT+CNTLを絶対位置と説明していますが、この用語ではわからないと思い、説明を加えました。

次回には、実際の操作を示します。ただし、これだけの組み合わせの操作例をすべて実際に紹介することは出来ないので、例示は一部にとどまります。今回の説明をもとに、実際に、3種類の操作を試していただければと思います。