imgSimpleMath

内容

  1. 1 メニュー情報
  2. 2 概要
  3. 3 追加の情報
  4. 4 コマンドラインでの使用法
  5. 5 変数
  6. 6 説明
  7. 7 サンプル
  8. 8 アルゴリズム
  9. 9 参考文献
  10. 10 関連のXファンクション

メニュー情報

算術演算

概要

2つの画像間の算術演算を行います。

追加の情報

これはOriginProのみの機能です。

コマンドラインでの使用法

1. imgSimpleMath img2:=[blue]1!mat(1);

2. imgSimpleMath img1:=[mbook1]msheet1!mat(1) img2:=[mbook2]msheet1!mat(1);

3. imgSimpleMath c1:=green f1:=10 img2:= [mbook2]msheet1!mat(1) c2:=green f2:=2 func:=xor

oimg:=result;

変数

表示
変数
I/O

データ型
デフォルト
説明
入力イメージ img1

入力

Image

<active>

最初の入力画像(Image1)を指定します。デフォルトの入力はアクティブイメージです。

Image1のチャネル c1

入力

int

Master

操作される関数にImage1のチャネルを指定します。デフォルトのチャネルはすべてです。
オプションリスト

  • master:マスター
    すべてのチャネル
  • red:赤
    Rチャネル
  • green:緑
    Gチャネル
  • blue:青
    Bチャネル
係数 *Image1 f1

入力

double

1.0

数学操作を実行する前にimage1に掛けられるファクターを指定します。デフォルトのファクターは1.0です。

Image1のZオフセット z1

入力

int

0

因数を乗算した後で、数学演算が行われる前に image1に追加される定数値を指定します。

入力イメージ2 img2

入力

Image

<>

1番目の画像と合成される入力画像(image2)を指定します。

Image2のチャネル c2

入力

int

Master

関数を操作するImage2のチャネルを指定します。デフォルトのチャネルはすべてです。
オプションリスト

  • master:マスター
    すべてのチャネル
  • red:赤
    Rチャネル
  • green:緑
    Gチャネル
  • blue:青  
    Bチャネル
係数 * Image2 f2

入力

double

1.0

数学操作を事項する前にimage2が掛け算される時のファクターを指定します。デフォルトのファクターは1.0です。

数学関数 func

入力

int

および

2つの画像を合成するのに使用する数学関数を指定します。
オプションリスト

  • and:And
    対応する各ピクセルをビット演算AND (&)をします。
  • or:Or
    対応する各ピクセルをビット演算 OR ( | ) をします。
  • xor:Xor
    対応する各ピクセルをビット演算 XOR (^) をします。
  • Add:加算
    対応する各ピクセルを加算します。
  • sub12:img1 - img2
    image1からimage2を減算します。
  • sub21:img2 - img1
    image2からimage1を減算します。
  • mul:img2 * img1
    対応する各ピクセルを乗算します。結果が最大値(2^bpp-1、bppはbits per pixel)に達したら、結果を最大値で除算します。
  • div12:img1/img2
    image1 を image2で除算します。image2 > 0の場合、結果は次のように計算されます。result = min( (img1/ img2) * 255, 255 ) それ以外の場合、image2 = 0であれば、result = 255です。
  • div21:img2/img1
    image2 を image1で除算します。mi> 0の場合、結果は次のように計算されます。: result = min( (img2 /img1) * 255, 255 ) それ以外の場合、image1 = 0であれば、result = 255です。
  • avg:avg (img2,img1)
    2つの値の平均を使用します。
  • min:min(img2,img1)
    2つの値の小さい方を使用します。
  • max:max(img2,img1)
    2つの値の大きい方を使用します。
  • abs:abs(img2 - img1)
    2つの値の差の絶対値を計算します。
出力イメージ oimg

出力

Image

<新規>

出力画像を指定します。デフォルトで、新しい画像が作成され、出力として使われます。

オフセットX X

入力

int

0

Image2に対する水平オフセットを指定します。0以外の値は、2つの画像の相対位置を変更します。

オフセットY Y

入力

int

0

Image2の垂直オフセットを指定します。0以外の値は、2つの画像の相対位置を変更します。

共通の領域へのトリミング crop

入力

int

0

出力を2つの入力画像の共通の領域に切り取るかどうかを指定します。

説明

imgSimpleMath 関数は、指定した数学関数を使って、2つの画像のデータを処理します。

サンプル

このサンプルでは、imgSimpleMath 関数を使って、別の画像(Image1)から画像(Image2)を減算します。

  1. イメージ:代数的演算:算術演算」を選択します。これはXファンクションのダイアログを開きます。
  2. Xファンクションダイアログで、下の図のように設定を変更して、OK ボタンをクリックしてダイアログを閉じます。

    新しい画像が結果として作成されます。


Image1:

Image:imgSimpleMath_help_English_files_image004.jpg

Image2

Image:imgSimpleMath_help_English_files_image006.jpg

出力画像

Image:imgSimpleMath_help_English_files_image008.jpg


他のサンプルについては、XFスクリプトダイアログ(F11を押す)をご覧下さい。

アルゴリズム

imgSimpleMath関数は、指定した数学関数を使って、データをバイト毎に組み合わせます。計算には、LEADTOOLS Main APIのL_CombineBitmapExt() を使用しています。詳細は、LEADTOOLS Main API Version 14 ヘルプファイルを参照し、トピックL_CombineBitmapExtを読んでください。

参考文献

LEADTOOLS Main API Help file, Version 14

関連のXファンクション

imgBlend