42 #define PROTO_INCREMENT 32
43 #define CONFIG_INCREMENT 16
121 for (Bit = Class->
NumProtos; Bit < NewNumProtos; Bit++)
127 tprintf(
"Ouch! number of protos = %d, vs max of %d!",
146 for (Pid = 0; Pid < Class->
NumProtos; Pid++) {
149 TotalLength += (
ProtoIn (Class, Pid))->Length;
152 return (TotalLength);
167 for (Pid = 0; Pid < Class->
NumProtos; Pid++) {
168 TotalLength += (
ProtoIn (Class, Pid))->Length;
170 return (TotalLength);
199 FLOAT32 Slope, Intercept, Normalizer;
201 Slope = tan (Proto->
Angle * 2.0 *
PI);
202 Intercept = Proto->
Y - Slope * Proto->
X;
203 Normalizer = 1.0 / sqrt (Slope * Slope + 1.0);
204 Proto->
A = Slope * Normalizer;
205 Proto->
B = -Normalizer;
206 Proto->
C = Intercept * Normalizer;
276 for (Pid = 0; Pid < Class->
NumProtos; Pid++) {
298 cprintf (
"Reading training data from '%s' ...",
305 sscanf(TextLine,
"%s", unichar);
324 Class = &TrainingData[unichar_id];
344 fscanf (File,
"%d %d\n", &NumConfigs, &NumWords);
351 for (Cid = 0; Cid < NumConfigs; Cid++) {
354 for (Wid = 0; Wid < NumWords; Wid++)
355 fscanf (File,
"%x", &ThisConfig[Wid]);
369 register PROTO Proto;
372 fscanf (File,
"%d\n", &NumProtos);
377 for (Pid = 0; Pid < NumProtos; Pid++) {
379 fscanf (File,
"%f %f %f %f %f %f %f\n",
385 &Proto->
B, &Proto->
C);
431 for (Cid = 0; Cid < Class->
NumConfigs; Cid++) {
432 fprintf (File,
"1 ");
436 for (Pid = 0; Pid < Class->
NumProtos; Pid++) {
442 fprintf (File,
"\n");
462 fprintf (File,
"6\n");
463 fprintf (File,
"linear essential -0.500000 0.500000\n");
464 fprintf (File,
"linear essential -0.250000 0.750000\n");
465 fprintf (File,
"linear essential 0.000000 1.000000\n");
466 fprintf (File,
"circular essential 0.000000 1.000000\n");
467 fprintf (File,
"linear non-essential -0.500000 0.500000\n");
468 fprintf (File,
"linear non-essential -0.500000 0.500000\n");
470 for (Pid = 0; Pid < Class->
NumProtos; Pid++) {
473 fprintf (File,
"significant elliptical 1\n");
474 fprintf (File,
" %9.6f %9.6f %9.6f %9.6f %9.6f %9.6f\n",
477 fprintf (File,
" %9.6f %9.6f %9.6f %9.6f %9.6f %9.6f\n",
478 0.0001, 0.0001, 0.0001, 0.0001, 0.0001, 0.0001);