Changeset 17172 for lang/actionscript

Show
Ignore:
Timestamp:
08/06/08 20:21:21 (4 months ago)
Author:
gyuque
Message:

replaced with cvRound macro

Location:
lang/actionscript/ashaardetect/trunk/cv
Files:
1 added
3 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/ashaardetect/trunk/cv/ClassifierTree.as

    r17167 r17172  
    1313                public var sr1:SRect = null; 
    1414                public var sr2:SRect = null; 
     15 
     16                public var has_sr2:Boolean; 
    1517 
    1618                public function readRectsFromBin(d:ByteArray):Boolean 
     
    3335                } 
    3436 
    35                 public function calcScale(s:Number, correction_ratio:Number, sums:SumImage):void 
     37                                public function calcScale(s:Number, correction_ratio:Number, sums:SumImage):void 
    3638                { 
    3739                        var len:int = rects.length; 
     
    4446                                sr = scaled_rects[i]; 
    4547 
    46                                 th = int(r[3] * s + 0.5); 
     48                                th = int((r[3] * s) + 0.5); 
    4749                                sr.weight = r[4] * correction_ratio; 
    48                                 sr.w    = int(r[2] * s + 0.5); 
     50                                sr.w    = int((r[2] * s) + 0.5); 
    4951                                sr.hh   = th * sums.width; 
    50                                 sr.base = int(r[0] * s + 0.5) + int(r[1] * s + 0.5)*sums.width; 
     52                                sr.base = int((r[0] * s) + 0.5) + int((r[1] * s) + 0.5)*sums.width; 
    5153 
    5254                                if(i == 0) 
     
    5658                        } 
    5759 
     60                        has_sr2 = false; 
    5861                        sr0 = scaled_rects[0]; 
    5962                        sr1 = scaled_rects[1]; 
    6063 
    6164                        if (len > 2) 
     65                        { 
    6266                                sr2 = scaled_rects[2]; 
     67                                has_sr2 = true; 
     68                        } 
    6369         
    6470                        scaled_rects[0].weight = -sum0 / area0; 
  • lang/actionscript/ashaardetect/trunk/cv/HaarCascade.as

    r17167 r17172  
    184184 
    185185 
    186                         var node:ClassifierTree, stage:ClassifierStage, i:int, j:int, stage_length:int; 
     186                        var node:ClassifierTree, stage:ClassifierStage, i:int, j:uint, stage_length:uint; 
    187187                        var cascade_count:int = mStages.length; 
    188188                        var sum:Number; 
     
    194194                        var base:int, hh:int, base_w:int; 
    195195 
    196                         var stage_sum:Number; 
    197                         var a:Number, b:Number, t:Number; 
    198                         var w0:Number; 
     196                        var stage_sum:Number, a:Number, b:Number, t:Number, w0:Number; 
    199197 
    200198                        for(i = start_stage;i < cascade_count;i++) 
     
    249247                                                sum += (raw_sum[base] - raw_sum[base_w] - raw_sum[base + hh] + raw_sum[base_w + hh]) * r1.weight; 
    250248 
    251                                                 if (node.sr2) 
     249                                                if (node.has_sr2) 
    252250                                                { 
    253251                                                        r2 = node.sr2; 
  • lang/actionscript/ashaardetect/trunk/cv/HaarCascade.mas

    r17167 r17172  
    193193 
    194194 
    195                         var node:ClassifierTree, stage:ClassifierStage, i:int, j:int, stage_length:int; 
     195                        var node:ClassifierTree, stage:ClassifierStage, i:int, j:uint, stage_length:uint; 
    196196                        var cascade_count:int = mStages.length; 
    197197                        var sum:Number; 
     
    203203                        var base:int, hh:int, base_w:int; 
    204204 
    205                         var stage_sum:Number; 
    206                         var a:Number, b:Number, t:Number; 
    207                         var w0:Number; 
     205                        var stage_sum:Number, a:Number, b:Number, t:Number, w0:Number; 
    208206 
    209207                        for(i = start_stage;i < cascade_count;i++) 
     
    250248                                                sum += CALCSUM * r1.weight; 
    251249 
    252                                                 if (node.sr2) 
     250                                                if (node.has_sr2) 
    253251                                                { 
    254252                                                        r2 = node.sr2;