Home | History | Annotate | Download | only in src

Lines Matching refs:nodes

647     CvHidHaarTreeNode* nodes[8];
653 nodes[0] = (classifier+0)->node + idxV[0];
654 nodes[1] = (classifier+1)->node + idxV[1];
655 nodes[2] = (classifier+2)->node + idxV[2];
656 nodes[3] = (classifier+3)->node + idxV[3];
657 nodes[4] = (classifier+4)->node + idxV[4];
658 nodes[5] = (classifier+5)->node + idxV[5];
659 nodes[6] = (classifier+6)->node + idxV[6];
660 nodes[7] = (classifier+7)->node + idxV[7];
664 t = _mm256_mul_ps(t, _mm256_set_ps(nodes[7]->threshold,
665 nodes[6]->threshold,
666 nodes[5]->threshold,
667 nodes[4]->threshold,
668 nodes[3]->threshold,
669 nodes[2]->threshold,
670 nodes[1]->threshold,
671 nodes[0]->threshold));
673 __m256 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[0], p_offset),
674 calc_sumf(nodes[6]->feature.rect[0], p_offset),
675 calc_sumf(nodes[5]->feature.rect[0], p_offset),
676 calc_sumf(nodes[4]->feature.rect[0], p_offset),
677 calc_sumf(nodes[3]->feature.rect[0], p_offset),
678 calc_sumf(nodes[2]->feature.rect[0], p_offset),
679 calc_sumf(nodes[1]->feature.rect[0], p_offset),
680 calc_sumf(nodes[0]->feature.rect[0], p_offset));
682 __m256 weight = _mm256_set_ps(nodes[7]->feature.rect[0].weight,
683 nodes[6]->feature.rect[0].weight,
684 nodes[5]->feature.rect[0].weight,
685 nodes[4]->feature.rect[0].weight,
686 nodes[3]->feature.rect[0].weight,
687 nodes[2]->feature.rect[0].weight,
688 nodes[1]->feature.rect[0].weight,
689 nodes[0]->feature.rect[0].weight);
693 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[1], p_offset),
694 calc_sumf(nodes[6]->feature.rect[1], p_offset),
695 calc_sumf(nodes[5]->feature.rect[1], p_offset),
696 calc_sumf(nodes[4]->feature.rect[1], p_offset),
697 calc_sumf(nodes[3]->feature.rect[1], p_offset),
698 calc_sumf(nodes[2]->feature.rect[1], p_offset),
699 calc_sumf(nodes[1]->feature.rect[1], p_offset),
700 calc_sumf(nodes[0]->feature.rect[1], p_offset));
702 weight = _mm256_set_ps(nodes[7]->feature.rect[1].weight,
703 nodes[6]->feature.rect[1].weight,
704 nodes[5]->feature.rect[1].weight,
705 nodes[4]->feature.rect[1].weight,
706 nodes[3]->feature.rect[1].weight,
707 nodes[2]->feature.rect[1].weight,
708 nodes[1]->feature.rect[1].weight,
709 nodes[0]->feature.rect[1].weight);
713 if( nodes[0]->feature.rect[2].p0 )
714 tmp[0] = calc_sumf(nodes[0]->feature.rect[2], p_offset) * nodes[0]->feature.rect[2].weight;
715 if( nodes[1]->feature.rect[2].p0 )
716 tmp[1] = calc_sumf(nodes[1]->feature.rect[2], p_offset) * nodes[1]->feature.rect[2].weight;
717 if( nodes[2]->feature.rect[2].p0 )
718 tmp[2] = calc_sumf(nodes[2]->feature.rect[2], p_offset) * nodes[2]->feature.rect[2].weight;
719 if( nodes[3]->feature.rect[2].p0 )
720 tmp[3] = calc_sumf(nodes[3]->feature.rect[2], p_offset) * nodes[3]->feature.rect[2].weight;
721 if( nodes[4]->feature.rect[2].p0 )
722 tmp[4] = calc_sumf(nodes[4]->feature.rect[2], p_offset) * nodes[4]->feature.rect[2].weight;
723 if( nodes[5]->feature.rect[2].p0 )
724 tmp[5] = calc_sumf(nodes[5]->feature.rect[2], p_offset) * nodes[5]->feature.rect[2].weight;
725 if( nodes[6]->feature.rect[2].p0 )
726 tmp[6] = calc_sumf(nodes[6]->feature.rect[2], p_offset) * nodes[6]->feature.rect[2].weight;
727 if( nodes[7]->feature.rect[2].p0 )
728 tmp[7] = calc_sumf(nodes[7]->feature.rect[2], p_offset) * nodes[7]->feature.rect[2].weight;
732 __m256 left = _mm256_set_ps(static_cast<float>(nodes[7]->left), static_cast<float>(nodes[6]->left),
733 static_cast<float>(nodes[5]->left), static_cast<float>(nodes[4]->left),
734 static_cast<float>(nodes[3]->left), static_cast<float>(nodes[2]->left),
735 static_cast<float>(nodes[1]->left), static_cast<float>(nodes[0]->left));
736 __m256 right = _mm256_set_ps(static_cast<float>(nodes[7]->right),static_cast<float>(nodes[6]->right),
737 static_cast<float>(nodes[5]->right),static_cast<float>(nodes[4]->right),
738 static_cast<float>(nodes[3]->right),static_cast<float>(nodes[2]->right),
739 static_cast<float>(nodes[1]->right),static_cast<float>(nodes[0]->right));
907 CvHidHaarTreeNode* nodes[8];
918 nodes[0] = classifiers[0]->node;
920 nodes[1] = classifiers[1]->node;
922 nodes[2] = classifiers[2]->node;
924 nodes[3] = classifiers[3]->node;
926 nodes[4] = classifiers[4]->node;
928 nodes[5] = classifiers[5]->node;
930 nodes[6] = classifiers[6]->node;
932 nodes[7] = classifiers[7]->node;
935 t = _mm256_mul_ps(t, _mm256_set_ps(nodes[7]->threshold,
936 nodes[6]->threshold,
937 nodes[5]->threshold,
938 nodes[4]->threshold,
939 nodes[3]->threshold,
940 nodes[2]->threshold,
941 nodes[1]->threshold,
942 nodes[0]->threshold));
944 __m256 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[0], p_offset),
945 calc_sumf(nodes[6]->feature.rect[0], p_offset),
946 calc_sumf(nodes[5]->feature.rect[0], p_offset),
947 calc_sumf(nodes[4]->feature.rect[0], p_offset),
948 calc_sumf(nodes[3]->feature.rect[0], p_offset),
949 calc_sumf(nodes[2]->feature.rect[0], p_offset),
950 calc_sumf(nodes[1]->feature.rect[0], p_offset),
951 calc_sumf(nodes[0]->feature.rect[0], p_offset));
953 __m256 weight = _mm256_set_ps(nodes[7]->feature.rect[0].weight,
954 nodes[6]->feature.rect[0].weight,
955 nodes[5]->feature.rect[0].weight,
956 nodes[4]->feature.rect[0].weight,
957 nodes[3]->feature.rect[0].weight,
958 nodes[2]->feature.rect[0].weight,
959 nodes[1]->feature.rect[0].weight,
960 nodes[0]->feature.rect[0].weight);
964 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[1], p_offset),
965 calc_sumf(nodes[6]->feature.rect[1], p_offset),
966 calc_sumf(nodes[5]->feature.rect[1], p_offset),
967 calc_sumf(nodes[4]->feature.rect[1], p_offset),
968 calc_sumf(nodes[3]->feature.rect[1], p_offset),
969 calc_sumf(nodes[2]->feature.rect[1], p_offset),
970 calc_sumf(nodes[1]->feature.rect[1], p_offset),
971 calc_sumf(nodes[0]->feature.rect[1], p_offset));
973 weight = _mm256_set_ps(nodes[7]->feature.rect[1].weight,
974 nodes[6]->feature.rect[1].weight,
975 nodes[5]->feature.rect[1].weight,
976 nodes[4]->feature.rect[1].weight,
977 nodes[3]->feature.rect[1].weight,
978 nodes[2]->feature.rect[1].weight,
979 nodes[1]->feature.rect[1].weight,
980 nodes[0]->feature.rect[1].weight);
1023 nodes[0] = classifiers[0]->node;
1025 nodes[1] = classifiers[1]->node;
1027 nodes[2] = classifiers[2]->node;
1029 nodes[3] = classifiers[3]->node;
1031 nodes[4] = classifiers[4]->node;
1033 nodes[5] = classifiers[5]->node;
1035 nodes[6] = classifiers[6]->node;
1037 nodes[7] = classifiers[7]->node;
1041 t = _mm256_mul_ps(t, _mm256_set_ps(nodes[7]->threshold,
1042 nodes[6]->threshold,
1043 nodes[5]->threshold,
1044 nodes[4]->threshold,
1045 nodes[3]->threshold,
1046 nodes[2]->threshold,
1047 nodes[1]->threshold,
1048 nodes[0]->threshold));
1050 __m256 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[0], p_offset),
1051 calc_sumf(nodes[6]->feature.rect[0], p_offset),
1052 calc_sumf(nodes[5]->feature.rect[0], p_offset),
1053 calc_sumf(nodes[4]->feature.rect[0], p_offset),
1054 calc_sumf(nodes[3]->feature.rect[0], p_offset),
1055 calc_sumf(nodes[2]->feature.rect[0], p_offset),
1056 calc_sumf(nodes[1]->feature.rect[0], p_offset),
1057 calc_sumf(nodes[0]->feature.rect[0], p_offset));
1059 __m256 weight = _mm256_set_ps(nodes[7]->feature.rect[0].weight,
1060 nodes[6]->feature.rect[0].weight,
1061 nodes[5]->feature.rect[0].weight,
1062 nodes[4]->feature.rect[0].weight,
1063 nodes[3]->feature.rect[0].weight,
1064 nodes[2]->feature.rect[0].weight,
1065 nodes[1]->feature.rect[0].weight,
1066 nodes[0]->feature.rect[0].weight);
1070 offset = _mm256_set_ps(calc_sumf(nodes[7]->feature.rect[1], p_offset),
1071 calc_sumf(nodes[6]->feature.rect[1], p_offset),
1072 calc_sumf(nodes[5]->feature.rect[1], p_offset),
1073 calc_sumf(nodes[4]->feature.rect[1], p_offset),
1074 calc_sumf(nodes[3]->feature.rect[1], p_offset),
1075 calc_sumf(nodes[2]->feature.rect[1], p_offset),
1076 calc_sumf(nodes[1]->feature.rect[1], p_offset),
1077 calc_sumf(nodes[0]->feature.rect[1], p_offset));
1079 weight = _mm256_set_ps(nodes[7]->feature.rect[1].weight,
1080 nodes[6]->feature.rect[1].weight,
1081 nodes[5]->feature.rect[1].weight,
1082 nodes[4]->feature.rect[1].weight,
1083 nodes[3]->feature.rect[1].weight,
1084 nodes[2]->feature.rect[1].weight,
1085 nodes[1]->feature.rect[1].weight,
1086 nodes[0]->feature.rect[1].weight);
1090 if( nodes[0]->feature.rect[2].p0 )
1091 tmp[0] = calc_sumf(nodes[0]->feature.rect[2],p_offset) * nodes[0]->feature.rect[2].weight;
1092 if( nodes[1]->feature.rect[2].p0 )
1093 tmp[1] = calc_sumf(nodesnodes[1]->feature.rect[2].weight;
1094 if( nodes[2]->feature.rect[2].p0 )
1095 tmp[2] = calc_sumf(nodes[2]->feature.rect[2],p_offset) * nodes[2]->feature.rect[2].weight;
1096 if( nodes[3]->feature.rect[2].p0 )
1097 tmp[3] = calc_sumf(nodes[3]->feature.rect[2],p_offset) * nodes[3]->feature.rect[2].weight;
1098 if( nodes[4]->feature.rect[2].p0 )
1099 tmp[4] = calc_sumf(nodes[4]->feature.rect[2],p_offset) * nodes[4]->feature.rect[2].weight;
1100 if( nodes[5]->feature.rect[2].p0 )
1101 tmp[5] = calc_sumf(nodes[5]->feature.rect[2],p_offset) * nodes[5]->feature.rect[2].weight;
1102 if( nodes[6]->feature.rect[2].p0 )
1103 tmp[6] = calc_sumf(nodes[6]->feature.rect[2],p_offset) * nodes[6]->feature.rect[2].weight;
1104 if( nodes[7]->feature.rect[2].p0 )
1105 tmp[7] = calc_sumf(nodes[7]->feature.rect[2],p_offset) * nodes[7]->feature.rect[2].weight;