Translate

2017年2月4日土曜日

画像に閾値が設定されているかどうか知る

Thresholdについて

ThresholdはImageProcessorのメソッドを使う。よく使うのは以下の二つ。
public void setThreshold(double minThreshold,
                         double maxThreshold,
                         int lutUpdate)

public double getMinThreshold()
lutUpdateにはRED_LUTやBLACK_AND_WHITE_LUT, OVER_UNDER_LUT, NO_LUT_UPDATEがあり、ImageProcessorの静的なメンバとして値が設定されている。なので、
ImageProcessor ip = imp.getProcessor();
ip.setThreshold(min, max, ImageProcessor.RED_LUT);
などのように使う。ここで、minの値を-808080.0DにセットするとThresholdを解除することができる。あるいは、ip.resetThreshold()というメソッドも使える。
また、getMinThoreshold()で返ってきた値が-808080.0Dあるいは、ImageProcessor.NO_THRESHOLDと同値であれば、その画像にはThresholdがかかっていないことを知ることができる。
これらメソッドは、例えばオブジェクトの自動検出のために閾値を利用する場合、閾値が設定されているかどうか事前に調べるために使うことができる。
以上

0 件のコメント:

コメントを投稿