def imagepicker_tile(): if request.method == 'POST' and request.form.get('list_cloud_percent') and request.form.get('date_start') and request.form.get('date_end'): date_start = request.form.get('date_start') date_end = request.form.get('date_end') date_start = datetime.datetime.strptime(date_start,"%d/%b/%Y") date_end = datetime.datetime.strptime(date_end,"%d/%b/%Y") list_cloud_percent = request.form.get('list_cloud_percent') list_cloud_percent = json.loads(list_cloud_percent) landstat = EELandsat(date_start, date_end) result = landstat.get_thumbs(list_cloud_percent) return jsonify({'result': result}) elif request.method == 'POST' and request.form.get('thumbs_tile'): logging.info(request.form.get('thumbs_tile')) thumbs_tile = request.form.get('thumbs_tile') thumbs_tile = thumbs_tile.split(',') date_start = request.form.get('date_start') date_end = request.form.get('date_end') date_start = datetime.datetime.strptime(date_start,"%d/%b/%Y") date_end = datetime.datetime.strptime(date_end,"%d/%b/%Y") result = "" sensor_date = {} for i in range(len(thumbs_tile)): date, tile, sensor = thumbs_tile[i].split('__') if tile not in sensor_date.keys(): sensor_date[tile] = {} sensor_date[tile]['location'] = Tile.find_geo_region(tile.replace("_", "/")) sensor_date[tile]['sensor_date'] = [] sensor_date[tile]['sensor_date'].append(sensor+'__'+date) else: sensor_date[tile]['sensor_date'].append(sensor+'__'+date) report = Report.current() logging.info("===== sensor_date =====") logging.info(sensor_date) for key in sensor_date: imagePicker = ImagePicker(report=report, added_by= users.get_current_user(), cell=str(key.replace("_", "/")), location=str(sensor_date[key]['location']), sensor_dates=sensor_date[key]['sensor_date'], start=date_start, end=date_end) result = result + imagePicker.save() return jsonify({'result': result}) else: return jsonify({'result': None})
def tiles_sensor(sensor=None): tile_array = [] if request.method == 'POST': return jsonify({'result': 'post method'}) else: if sensor == 'modis': tile_array = [ { 'name': 'h10v09', 'value': 'h10v09'}, { 'name': 'h11v08', 'value': 'h11v08'}, { 'name': 'h11v09', 'value': 'h11v09'}, { 'name': 'h11v10', 'value': 'h11v10'}, { 'name': 'h12v08', 'value': 'h12v08'}, { 'name': 'h12v09', 'value': 'h12v09'}, { 'name': 'h12v10', 'value': 'h12v10'}, { 'name': 'h13v09', 'value': 'h13v09'}, { 'name': 'h13v10', 'value': 'h13v10'} ] r = Report.current() start_date = r.start end_date = r.end #compounddate = '%04d%02d' % (start_date.year, start_date.month) for i in range(len(tile_array)): image_picker = ImagePicker.find_by_period_and_cell(start_date, end_date, tile_array[i]['name']) if image_picker: tile_array[i]['done'] = True else: tile_array[i]['done'] = False return jsonify({'result': tile_array})
def picker(tile=None): if request.method == 'POST': logging.info(request.form.get('thumb')) cell = request.form.get('tile') p = re.compile('\d+') p = p.findall(cell) cell = 'h' + p[0] + 'v' + p[1] thumbs = request.form.get('thumb').split(',') sensor_dates = [] for i in range(len(thumbs)): day, month, year = thumbs[i].split('-') sensor_dates.append('modis__' + year +'-'+ month +'-'+ day) location = get_modis_location(cell) report = Report.current() date_start = datetime.datetime.combine(report.start, datetime.time()) date_end = datetime.datetime.combine(report.end, datetime.time()) imagePicker = ImagePicker(report=report, added_by= users.get_current_user(), cell=str(cell), location=location, sensor_dates=sensor_dates, start=date_start, end=date_end) return jsonify({'result': imagePicker.save()}) else: #cell = request.args.get('cell', '') reports = Report.current().as_dict() date = time.gmtime(reports['start'] / 1000) year = time.strftime("%Y", date) month = time.strftime("%m", date) if tile: bands = 'sur_refl_b01,sur_refl_b04,sur_refl_b03' gain = 0.1 results = get_modis_thumbnails_list(year, month, tile, bands, gain) return jsonify({'result': results}) else: return jsonify({'result': []})