def get_ocr_transformations(image): filepath = utils.get_filepath(app.config['INPUT_FOLDER'], image) if filepath is None: return redirect(url_for('index')) text = request.form.get('text', '') transformations = utils.get_images(app.config['OUTPUT_FOLDER']) results = [] for transformation in transformations: result_text, percentage = ocr.compare(text, utils.get_filepath(app.config['OUTPUT_FOLDER'], transformation[1])) results.append({'transformation': transformation[1].split('-')[0], 'original': text, 'result': result_text, 'percentage': percentage}) results = sorted(results, key=itemgetter('percentage'), reverse=True) result_text, percentage = ocr.compare(text, filepath) results.insert(0, {'transformation': 'original', 'original': text, 'result': result_text, 'percentage': percentage}) return jsonify(results)
def get_ocr_steps(original, folder): filepath = utils.get_filepath(app.config['INPUT_FOLDER'], original) if filepath is None: return redirect(url_for('index')) text = request.form.get('text', '') steps = utils.get_images('static/img/pipelines/steps/{}'.format(folder)) steps.sort(key=lambda x: int(x[1].split(')')[0])) results = [] for step in steps: result_text, percentage = ocr.compare(text, utils.get_filepath('static/img/pipelines/steps/{}'.format(folder), step[1])) results.append({'step': step[1].split('-')[0], 'original': text, 'result': result_text, 'percentage': percentage}) result_text, percentage = ocr.compare(text, filepath) results.insert(0, {'step': 'original', 'original': text, 'result': result_text, 'percentage': percentage}) return jsonify(results)
def get_ocr(image): filepath = utils.get_filepath(app.config['INPUT_FOLDER'], image) if filepath is None: return redirect(url_for('index')) text = request.form.get('text', '') pipelines = utils.get_images(app.config['OUTPUT_FOLDER_PIPELINES']) pipelines.sort(key=lambda x: int(x[1].split('-')[0])) results = [] for pipeline in pipelines: result_text, percentage = ocr.compare(text, utils.get_filepath(app.config['OUTPUT_FOLDER_PIPELINES'], pipeline[1])) results.append({'pipeline': pipeline[1].split('-')[0], 'original': text, 'result': result_text, 'percentage': percentage}) results = sorted(results, key=itemgetter('percentage'), reverse=True) result_text, percentage = ocr.compare(text, filepath) results.insert(0, {'pipeline': 'original', 'original': text, 'result': result_text, 'percentage': percentage}) return jsonify(results)
def get_ocr(image): filepath = utils.get_filepath(app.config['INPUT_FOLDER'], image) if filepath is None: return not_found_error() text = request.get_json().get('text') if text is None: response = jsonify({ 'success': False, 'message': 'Field "text" is required' }) response.status_code = 400 return response pipelines = utils.get_images(app.config['OUTPUT_FOLDER_PIPELINES']) pipelines.sort(key=lambda x: int(x[1].split('-')[0])) results = [] for pipeline in pipelines: result_text, percentage = ocr.compare( text, utils.get_filepath(app.config['OUTPUT_FOLDER_PIPELINES'], pipeline[1])) results.append({ 'pipeline': pipeline[1].split('-')[0], 'original': text, 'result': result_text, 'percentage': percentage }) results = sorted(results, key=itemgetter('percentage'), reverse=True) result_text, percentage = ocr.compare(text, filepath) results.insert( 0, { 'pipeline': 'original', 'original': text, 'result': result_text, 'percentage': percentage }) response = jsonify({'success': True, 'results': results}) response.status_code = 200 return response
def get_ocr_steps(original, folder): filepath = utils.get_filepath(app.config['INPUT_FOLDER'], original) if filepath is None: return not_found_error() text = request.get_json().get('text') if text is None: response = jsonify({ 'success': False, 'message': 'Field "text" is required' }) response.status_code = 400 return response steps = utils.get_images('static/img/pipelines/steps/{}'.format(folder)) steps.sort(key=lambda x: int(x[1].split(')')[0])) results = [] for step in steps: result_text, percentage = ocr.compare( text, utils.get_filepath('static/img/pipelines/steps/{}'.format(folder), step[1])) results.append({ 'step': step[1].split('-')[0], 'original': text, 'result': result_text, 'percentage': percentage }) result_text, percentage = ocr.compare(text, filepath) results.insert( 0, { 'step': 'original', 'original': text, 'result': result_text, 'percentage': percentage }) response = jsonify({'success': True, 'results': results}) response.status_code = 200 return response
def main(image=0): if image == 0: init__file_results() images = utils.get_images(config['INPUT_FOLDER']) images.sort(key=lambda x: int(x[1])) images = images[image:] for image in images: print('Image {}'.format(image[1])) filepath = image[0][1:] text = ORIGINAL_TEXTS[image[1]] utils.delete_images(config['OUTPUT_FOLDER_PIPELINES']) time = default_timer() result_text, percentage = ocr.compare(text, filepath) time_end = default_timer() - time write_file_result( [image[1], 'original', percentage, text, result_text, time_end]) steps, times = processing_lib.pipeline(filepath, config['TRANSFORMATIONS']) pipelines = utils.get_images(config['OUTPUT_FOLDER_PIPELINES']) for pipeline in pipelines: time = default_timer() result_text, percentage = ocr.compare( text, utils.get_filepath(config['OUTPUT_FOLDER_PIPELINES'], pipeline[1])) time_end = default_timer() - time write_file_result([ image[1], '\r'.join(steps[int(pipeline[1].split('-')[0])]), percentage, text, result_text, times[int(pipeline[1].split('-')[0])] + time_end ])