package com.github.axet.lookup.common;
* Minimal Sum-Tables required for any image for NCC or FNCC algorithm.
* 3) Integral ^ 2 Image (Image Energy)
* 4) Zero Mean Image (image where each pixel substracted with image mean value)
public class ImageBinaryChannel {
public IntegralImage integral;
public IntegralImage2 integral2;
public ImageZeroMean zeroMean;
public ImageBinaryChannel() {
integral = new IntegralImage();
integral2 = new IntegralImage2();
public ImageBinaryChannel(SArray img) {
integral = new IntegralImage();
integral2 = new IntegralImage2();
this.integral.initBase(gi);
this.integral2.initBase(gi);
for (int x = 0; x < this.gi.cx; x++) {
for (int y = 0; y < this.gi.cy; y++) {
zeroMean = new ImageZeroMean(integral);
public void step(int x,int y) {
public void initBase(SArray img) {
return integral2.dev2n(integral);
return integral2.dev2(integral);
return integral2.dev(integral);
public double dev2n(int x1, int y1, int x2, int y2) {
return integral2.dev2n(integral, x1, y1, x2, y2);
public double dev2(int x1, int y1, int x2, int y2) {
return integral2.dev2(integral, x1, y1, x2, y2);
public double dev(int x1, int y1, int x2, int y2) {
return integral2.dev(integral, x1, y1, x2, y2);