cands_filename = sys.argv[1] fake_candidates = parser.parse(cands_filename) planted_objects = match.PlantedObject(fake_candidates) reals_filename = cands_filename.replace('cands', 'reals') fake_reals = parser.parse(reals_filename) missed_filename = os.path.join("missed", os.path.basename(cands_filename)) missed_fptr = open(missed_filename, 'w+') missed_cands = astrom.StreamingAstromWriter(missed_fptr, sys_header=fake_candidates.sys_header) (cands_index, cands_planted_index) = match.planted(fake_candidates, planted_objects, tolerance=10.0) (reals_index, reals_planted_index) = match.planted(fake_reals, planted_objects, tolerance=10.0) assert isinstance(cands_index, numpy.ma.MaskedArray) assert isinstance(reals_index, numpy.ma.MaskedArray) lost = [] found = [] for idx in range(len(cands_index)): if not cands_index.mask[idx]: found.append(cands_planted_index[cands_index[idx]]) if reals_planted_index.mask[cands_index[idx]]: lost.append(cands_planted_index[cands_index[idx]]) missed_cands.write_source(fake_candidates.get_sources()[idx]) if len(found) > 0: ascii.write(planted_objects.table[found], os.path.basename(reals_filename)+".fnd")
filename = sys.argv[1] dirname = os.path.dirname(filename) basename = os.path.basename(filename) scramble_filename = os.path.join(dirname, basename[3:]) parser = astrom.AstromParser() fake_candidates = parser.parse(filename) for observation in fake_candidates.observations: observation.fk = "" planted_objects = match.PlantedObject(fake_candidates) (fk_index, planted_index) = match.planted(fake_candidates, planted_objects, tolerance=8.0) print fk_index.mask print fk_index print planted_index detections = fake_candidates.get_sources() faint_fptr = open(scramble_filename, 'w+') faint_cands = astrom.StreamingAstromWriter(faint_fptr, sys_header=fake_candidates.sys_header) for idx in range(len(fk_index)): # Record source if no matching Object.planted entry print detections[idx], fk_index[idx] if fk_index.mask[idx]: