Я ожидаю, что гистограмма будет отображаться в диапазоне от минимального до максимального значения моего изображения, но она включает в себя большие значения, чем максимальное значение - PullRequest
0 голосов
/ 26 июня 2018

Я использую открытый исходный код Conrad и хочу вычислить гистограмму изображения.Для этого сначала я нашел минимальное и максимальное значения моего изображения и диапазон = max-min, а затем нижний предел и верхний предел точно по этой ссылке https://www2.southeastern.edu/Academics/Faculty/dgurney/Math241/StatTopics/HistGen.htm

Теперь моя проблема в том, какможет ли программа разделить диапазон в соответствии с шириной ячейки и как я могу назначить каждое значение изображения для каждой ширины ячейки (классы).

 public static int[] computeHistogram2D(Grid2D grid, int bins, int width, int heigth) {


    float val = 0;
    float max = -Float.MAX_VALUE;
    float min = Float.MAX_VALUE;

    for (int i = 0; i < width; i++) {
        for (int j = 0 ; j < heigth; j++) {
                val = grid.getAtIndex(i, j);
                if (val > max) {
                    max = val;
                }
                if (val < min) {
                    min = val;
                }
    }
}
    int[] histo = new int[bins];
    double[] histof = new double[bins];

    float range = max - min;
    float lowerLimit = range/(float)bins;
    float upperBound = range / (float) (bins -1);
    //float binWidth =( upperBound - lowerLimit)/bins;


    for (int i = 0; i < width; i++) {
        for (int j = 0 ; j < heigth; j++) {
                val = grid.getAtIndex(i, j);
                int b = (int) ((val - min) / upperBound);
                histo[b]++;
                histof[b]++;
                System.out.println(" intervals " + b );
            }
        }
    System.out.println("maxValgrid2D:  " +max + "   minValGrid2D:  " + min + "  binWidth  "+ upperBound);
    VisualizationUtil.createPlot(histof, "Histogram2D", "intensity", "count").show();
    return histo;

}

Это то, что я получил в результате,что кажется неправильным, потому что максимальное значение моей картинки 21,12

Что я ожидаю получить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...