| | |
| | | uchar* createTemplateData(int line); |
| | | |
| | | int LINE_NUMBER = 10; |
| | | int RE = 17; |
| | | int RE = _NUMBER_L2_TOTAL_NUMBER; |
| | | |
| | | |
| | | |
| | |
| | | op->init(); |
| | | for (int i = 0;i < 100;i++) |
| | | { |
| | | op->recognition_numbers(a_in, b_in, rows, cols); |
| | | op->recognition_numbers(a_in, b_in, rows, cols ,_NUMBER_L2_WIDTH, _NUMBER_L2_HEIGHT, _NUMBER_L2_TOTAL_NUMBER); |
| | | } |
| | | op->destory(); |
| | | |
| | |
| | | } |
| | | |
| | | uchar* createDemoData(int line) { |
| | | unsigned char* data = (unsigned char*)malloc(sizeof(unsigned char) * (ImgUtil::NUM_HEIGHT * line) * 5 * LINE_NUMBER * RE); |
| | | unsigned char* data = (unsigned char*)malloc(sizeof(unsigned char) * (_NUMBER_L2_HEIGHT * line) * 5 * LINE_NUMBER * RE); |
| | | int outLineDataCount = 8 * 5 * LINE_NUMBER * RE; |
| | | int inLineDataCount = 5 * LINE_NUMBER * RE; |
| | | for (int l = 0;l < line;l++) |
| | |
| | | int intLineCount = inLineDataCount * r; |
| | | |
| | | for (int c = 0;c < 5;c++) { |
| | | uchar value = ImgUtil::NUMS[re%10].data.ptr(r)[c]; |
| | | uchar value = ImgUtil::NUMS_LEVEL2[re%10].data.ptr(r)[c]; |
| | | int index = outLineCount; |
| | | index += intLineCount; |
| | | int x = re * LINE_NUMBER * 5 + n * 5 + c; |
| | |
| | | } |
| | | |
| | | uchar* createTemplateData(int line) { |
| | | unsigned char* data = (unsigned char*)malloc(sizeof(unsigned char) * (ImgUtil::NUM_HEIGHT * line) * ImgUtil::NUM_WIDTH * LINE_NUMBER * RE); |
| | | int outLineDataCount = ImgUtil::NUM_HEIGHT * ImgUtil::NUM_WIDTH * LINE_NUMBER * RE; |
| | | int inLineDataCount = ImgUtil::NUM_WIDTH * LINE_NUMBER * RE; |
| | | unsigned char* data = (unsigned char*)malloc(sizeof(unsigned char) * (_NUMBER_L2_HEIGHT * line) * _NUMBER_L2_WIDTH * LINE_NUMBER * RE); |
| | | int outLineDataCount = _NUMBER_L2_HEIGHT * _NUMBER_L2_WIDTH * LINE_NUMBER * RE; |
| | | int inLineDataCount = _NUMBER_L2_WIDTH * LINE_NUMBER * RE; |
| | | for (int l = 0;l < line;l++) |
| | | { |
| | | int outLineCount = outLineDataCount * l; |
| | | for (int re = 0;re < RE;re++) { |
| | | for (int n = 0;n < LINE_NUMBER;n++) |
| | | { |
| | | for (int r = 0;r < ImgUtil::NUM_HEIGHT;r++) { |
| | | for (int r = 0;r < _NUMBER_L2_HEIGHT;r++) { |
| | | int intLineCount = inLineDataCount * r; |
| | | |
| | | for (int c = 0;c < ImgUtil::NUM_WIDTH;c++) { |
| | | uchar value = ImgUtil::NUMS[n].data.ptr(r)[c]; |
| | | for (int c = 0;c < _NUMBER_L2_WIDTH;c++) { |
| | | uchar value = ImgUtil::NUMS_LEVEL2[n].data.ptr(r)[c]; |
| | | int index = outLineCount; |
| | | index += intLineCount; |
| | | int x = re * LINE_NUMBER * ImgUtil::NUM_WIDTH + n * ImgUtil::NUM_WIDTH + c; |
| | | int x = re * LINE_NUMBER * _NUMBER_L2_WIDTH + n * _NUMBER_L2_WIDTH + c; |
| | | index += x; |
| | | data[index] = value > 40 ? 1 : 0; |
| | | } |