def image(): if request.method == 'GET': response = make_response( render_template('upload.html') ) return response if request.method == 'POST': if request.form.get('_auth_token') != auth_token: response = make_response( json.dumps("Token is not valid"), 401 ) response.headers['Content-Type'] = 'application/json' return response image_file = request.files.get('justimage', None) if image_file and allowed_file(image_file.filename): filename = secure_filename(image_file.filename) image_file_path = os.path.join(IMAGE_FOLDER, filename) image_file.save(image_file_path) temperature_file = request.files.get('temperature', None) if temperature_file and allowed_file(temperature_file.filename): filename = secure_filename(temperature_file.filename) temperature_path = os.path.join(TRAIN_FOLDER, filename) image_file.save(temperature_path) rate = request.form.get('rate') if not rate: rate = 2.5 upload_result = { "result": "success", "rate": int(rate), "image_file": image_file.filename if image_file else None, "temperature_file": temperature_file.filename if temperature_file else None, "result": None } if image_file or temperature_file: res = fr.face_recognizer(image_file_path, int(rate)) if not res: upload_result['result'] = {"predicted_rate": "no face found"} else: predicted_rate =lr.linear_regressor(res, int(rate)) upload_result['result'] = {"predicted_rate": predicted_rate} return jsonify(upload_result)
def image(): if request.method == 'GET': response = make_response( render_template('upload.html') ) return response if request.method == 'POST': if request.form.get('_auth_token') != auth_token: response = make_response( json.dumps("Token is not valid"), 401 ) response.headers['Content-Type'] = 'application/json' return response image_file_url = request.form.get('justimage', None) image_file_path = None if image_file_url and allowed_file(image_file_url): h = httplib2.Http('.cache') response, content = h.request(image_file_url, "GET") ext = image_file_url.rsplit('.', 1)[1] if response.status == '200' or '304': filename="image." + ext # filename = secure_filename(image_file.filename) image_file_path = os.path.join(IMAGE_FOLDER, filename) with open(image_file_path, 'wb') as f: f.write(content) #image_file.save(image_file_path) temp_file_url = request.form.get('temperature', None) if temp_file_url and allowed_file(temp_file_url): h = httplib2.Http('.cache') response, content = h.request(temp_file_url, "GET") filename = "temp.bin" temperature_path = os.path.join(TRAIN_FOLDER, filename) with open(temperature_path, 'wb') as f: f.write(content) rate = request.form.get('rate') if rate: has_user_rate = True else: has_user_rate = False rate = 2.5 upload_result = { "result": "success", "rate": rate, "image_file": image_file_url if image_file_url else None, "temperature_file": temp_file_url if temp_file_url else None, "result": dict() } if image_file_url or temp_file_url: try: result, res = fr.face_recognizer(image_file_path, int(rate)) if result: predicted_rate =lr.linear_regressor(res, int(rate)) upload_result['result'] = {"how_other_user_say": predicted_rate} else: upload_result['result'] = {"how_other_user_say": "no face found"} except: pass if image_file_path: thermal_rate = tg.thermal_grader(image_file_path, ext) upload_result['result']['thermal_rate'] = thermal_rate if thermal_rate else 2.5 upload_result['result']['images'] = { "orig": '/pic/image.'+ext, "base": '/pic/base.'+ext, "point1": '/pic/point1.'+ext, "point2": '/pic/point2.'+ext } print upload_result else: upload_result['result']['error'] = "Can not get image from link" print "Error" return jsonify(upload_result)