package ac.ooechs.oil.segmentation;

import ac.essex.ooechs.imaging.commons.segmentation.Segmenter;
import ac.essex.ooechs.imaging.commons.PixelLoader;
import ac.essex.ooechs.imaging.commons.ColourChannels;
import ac.essex.gp.multiclass.PCM;
import ac.essex.gp.multiclass.BetterDRS;

/**
 * <p/>
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version,
 * provided that any use properly credits the author.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details at http://www.gnu.org
 * </p>
 *
 * @author Olly Oechsle, University of Essex, Date: 07-Mar-2008
 * @version 1.0
 */
public class PipelineSegmenter extends Segmenter {

PCM pcm = new BetterDRS(27.111709594726562,324.5982360839844,new int[]{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,7,7,7,7,7,7,7,7,7,7});
public int segment(PixelLoader image, int x, int y) {
    return pcm.getClassFromOutput(image.get3x3Stats(x, y, ColourChannels.BLUE).getMean() + image.getPerimeter1().getStatistics(image, x, y).getStandardDeviation());
}

}
