def get_target_filename_portion(red_lbl_file, green_lbl_file, blue_lbl_file): target_red = info.get_target(red_lbl_file) target_green = info.get_target(green_lbl_file) target_blue = info.get_target(blue_lbl_file) targets = np.unique([target_red, target_green, target_blue]) return "_".join(targets)
def output_filename(file_name): dirname = os.path.dirname(file_name) if len(dirname) > 0: dirname += "/" target = info.get_target(file_name) filter1, filter2 = info.get_filters(file_name) image_time = info.get_image_time(file_name) spacecraft = info.get_spacecraft_name(file_name) image_id = file_name[:file_name.index(".")] camera = info.get_instrument_id(file_name) if camera is not None and len(camera) > 0: camera = "NAC" if camera == "NARROW_ANGLE_CAMERA" else "WAC" else: camera = "UNK" sc = "Vg1" if spacecraft == "VOYAGER_1" else "Vg2" out_file = "{dirname}{image_id}_{spacecraft}_{camera}_{target}_{filter1}_{image_date}".format(dirname=dirname, image_id=image_id, spacecraft=sc, camera=camera, target=target, filter1=filter1, image_date=image_time.strftime('%Y-%m-%d_%H.%M.%S')) return out_file
def printInfo(lbl_file_name): target = info.get_target(lbl_file_name) filter1, filter2 = info.get_filters(lbl_file_name) image_time = info.get_image_time(lbl_file_name) num_lines = info.get_num_lines(lbl_file_name) num_line_samples = info.get_num_line_samples(lbl_file_name) sample_bits = info.get_sample_bits(lbl_file_name) instrument = info.get_instrument_id(lbl_file_name) if instrument in ("ISSNA", "NARROW_ANGLE_CAMERA"): camera = "Narrow" elif instrument in ("ISSWA", "WIDE_ANGLE_CAMERA"): camera = "Wide" else: camera = "NA" print "%25s|%10s|%10s|%22s|%5s|%5s|%4s|%8s| %s"%(target, filter1, filter2, image_time.strftime('%Y-%m-%d %H:%M:%S'), num_lines, num_line_samples, sample_bits, camera, lbl_file_name)
def output_filename(file_name): dirname = os.path.dirname(file_name) if len(dirname) > 0: dirname += "/" product_id = info.get_product_id(file_name) target = info.get_target(file_name) filter1, filter2 = info.get_filters(file_name) image_time = info.get_image_time(file_name) out_file = "{dirname}{product_id}_{target}_{filter1}_{filter2}_{image_date}".format( dirname=dirname, product_id=product_id[2:-4], target=target, filter1=filter1, filter2=filter2, image_date=image_time.strftime('%Y-%m-%d_%H.%M.%S')) return out_file
require_height = args.height if args.height is not None else [] require_width = args.width if args.width is not None else [] filters = [f.upper() for f in filters] targets = [t.upper() for t in targets] matching_files = [] for f in args.data: if f[-3:].upper() != "CUB": print "File %s is not supported, skipping"%f continue target = None try: target = info.get_target(f) except: pass filter1, filter2 = None, None try: filter1, filter2 = info.get_filters(f) except: pass width = info.get_num_line_samples(f) height = info.get_num_lines(f) if len(targets) > 0 and target.upper() not in targets:
use_fov = True args = parser.parse_args() source = args.data fov = args.fov pct = args.pct if not os.path.exists(source): print "Specified dataset %s not found" % source sys.exit(1) output_path = "%s_Simulated.jpg" % utils.output_filename(source) image_time = info.get_image_time(source) target = info.get_target(source).upper() default_fov = 1 camera = info.get_instrument_id(source) if camera == "ISSNA": default_fov = 0.35 elif camera == "ISSWA": default_fov = 3.5 if fov is None or fov < 1 or fov > 90: fov = default_fov if pct is not None: use_fov = False if pct is None or pct < 1 or pct > 100:
def test_get_target_cub(self): assert info.get_target(TestIsis3Galileo.CUB_FILE) == "IO"
def test_get_target_lbl(self): assert info.get_target(TestIsis3Galileo.LBL_FILE) == "IO"
def test_get_target_cub(self): assert info.get_target(TestIsis3Voyager.CUB_FILE) == "ENCELADU"
def test_get_target_imq(self): assert info.get_target(TestIsis3Voyager.IMQ_FILE) == "ENCELADU"
def process_data_file(lbl_file_name, require_target, require_filters, require_width, require_height, metadata_only, is_verbose, skip_existing, init_spice, nocleanup, additional_options): source = utils.guess_from_filename_prefix(lbl_file_name) source_dirname = os.path.dirname(source) if source_dirname == "": source_dirname = "." if not os.path.exists(source): print "File %s does not exist" % source else: print_if_verbose("Processing %s" % source, is_verbose) target = info.get_target(source) print_if_verbose("Target: %s" % target, is_verbose) product_id = info.get_product_id(source) print_if_verbose("Product ID: %s" % product_id, is_verbose) try: filter1, filter2 = info.get_filters(source) except: filter1, filter2 = (None, None) print_if_verbose("Filter #1: %s" % filter1, is_verbose) print_if_verbose("Filter #2: %s" % filter2, is_verbose) width = info.get_num_line_samples(source) height = info.get_num_lines(source) lines = info.get_num_lines(source) print_if_verbose("Lines: %s" % lines, is_verbose) line_samples = info.get_num_line_samples(source) print_if_verbose("Samples per line: %s" % line_samples, is_verbose) image_date = info.get_image_time(source) print_if_verbose("Image Date: %s" % image_date, is_verbose) out_file_base = utils.output_filename(source) out_file_tiff = "%s.tif" % out_file_base print_if_verbose("Output Tiff: %s" % out_file_tiff, is_verbose) out_file_cub = "%s.cub" % out_file_base print_if_verbose("Output Cube: %s" % out_file_cub, is_verbose) if metadata_only: return if skip_existing and os.path.exists(out_file_cub) and os.path.exists( out_file_tiff): print "Output exists, skipping." return if require_target is not None and not require_target.upper( ) == target.upper(): print "Target mismatch, exiting." return if require_filters is not None and not (filter1 in require_filters or filter2 in require_filters): print "Filter mismatch, exiting." return if require_height is not None and not (str(height) in require_height): print "Height filter mismatch, exiting" if require_width is not None and not (str(width) in require_width): print "Width filter mismatch, exiting" utils.process_pds_data_file(source, is_verbose=is_verbose, init_spice=init_spice, nocleanup=nocleanup, additional_options=additional_options)
def test_get_target_lbl(self): assert info.get_target(TestIsis3Info.LBL_FILE) == "ENCELADUS"