#include <quadlsq.h>
Definition at line 25 of file quadlsq.h.
| void QLSQ::add |
( |
double |
x, |
|
|
double |
y |
|
) |
| |
Definition at line 58 of file quadlsq.cpp.
68 sigxxx += (
long double) x *x * x;
69 sigxxy += (
long double) x *x * y;
70 sigxxxx += (
long double) x *x * x * x;
| void QLSQ::fit |
( |
int |
degree | ) |
|
Definition at line 105 of file quadlsq.cpp.
108 long double cubetemp;
109 long double squaretemp;
110 long double top96, bottom96;
112 if (n >= 4 && degree >= 2) {
113 cubetemp = sigxxx * n - (
long double) sigxx *sigx;
116 cubetemp * ((
long double) sigxy * n - (
long double) sigx * sigy);
118 squaretemp = (
long double) sigxx *n - (
long double) sigx *sigx;
120 top96 += squaretemp * ((
long double) sigxx * sigy - sigxxy * n);
122 bottom96 = cubetemp * cubetemp;
124 bottom96 -= squaretemp * (sigxxxx * n - (
long double) sigxx * sigxx);
126 a = top96 / bottom96;
128 top96 = ((
long double) sigxx * sigx - sigxxx * n) * a
129 + (
long double) sigxy *n - (
long double) sigx *sigy;
130 bottom96 = (
long double) sigxx *n - (
long double) sigx *sigx;
131 b = top96 / bottom96;
133 c = (sigy - a * sigxx - b * sigx) / n;
135 else if (n == 0 || degree < 0) {
140 if (n > 1 && degree > 0) {
141 b = (sigxy * n - sigx * sigy) / (sigxx * n - sigx * sigx);
145 c = (sigy - b * sigx) / n;
| void QLSQ::remove |
( |
double |
x, |
|
|
double |
y |
|
) |
| |
Definition at line 80 of file quadlsq.cpp.
93 sigxxx -= (
long double) x *x * x;
94 sigxxy -= (
long double) x *x * y;
95 sigxxxx -= (
long double) x *x * x * x;
void error(const char *caller, TessErrorLogCode action, const char *format,...) const
The documentation for this class was generated from the following files:
- /home/abuild/rpmbuild/BUILD/tesseract-ocr-3.02.02/ccstruct/quadlsq.h
- /home/abuild/rpmbuild/BUILD/tesseract-ocr-3.02.02/ccstruct/quadlsq.cpp