reference/ocr-simple/histogram.h
author viric@llimona
Thu, 18 May 2006 23:12:51 +0200
changeset 0 6b8091ca909a
permissions -rw-r--r--
Init from working directory of svn repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     1
#ifndef HISTOGRAM
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     2
#define HISTOGRAM 1
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     3
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     4
class Histogram
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     5
{
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     6
/* just an array of integers with some statistical information */
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     7
/* consider implementing with an intarray (from hw1) instead */
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     8
 private:
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
     9
  double mean;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    10
  double variance;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    11
  double standard_dev;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    12
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    13
  int num_rows;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    14
  int* row_weights;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    15
  double cut_angle;/* this doesn't really belong here, but who cares */
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    16
  void initialize_mean();
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    17
  void initialize_variance();
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    18
  void initialize_standard_dev(); 
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    19
 public:
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    20
  display();
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    21
  Histogram(int n_rows, int* r_weights, double c_angle);
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    22
  inline int get_row_weight(int row)
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    23
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    24
	return row_weights[row];
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    25
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    26
  inline int get_num_rows()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    27
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    28
	return num_rows;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    29
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    30
  inline double get_mean()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    31
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    32
	return mean;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    33
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    34
  inline double get_standard_dev()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    35
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    36
	return standard_dev;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    37
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    38
  inline double get_variance()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    39
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    40
	return variance;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    41
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    42
  inline double get_cut_angle()
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    43
      {
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    44
	return cut_angle;
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    45
      }
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    46
};
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    47
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    48
#endif
6b8091ca909a Init from working directory of svn repository.
viric@llimona
parents:
diff changeset
    49