Mercurial > repos > galaxyp > qupath_roi_splitter
diff qupath_roi_splitter.py @ 3:24ccdcfbabac draft
planemo upload for repository hhttps://github.com/npinter/ROIsplitter commit 00029e8a3ee400f69a6dbe9e556ec9c27c6979cb
author | galaxyp |
---|---|
date | Thu, 25 Apr 2024 15:13:22 +0000 |
parents | 7bee859bbd11 |
children | 9f136ebf73ac |
line wrap: on
line diff
--- a/qupath_roi_splitter.py Thu Apr 11 07:52:58 2024 +0000 +++ b/qupath_roi_splitter.py Thu Apr 25 15:13:22 2024 +0000 @@ -25,20 +25,22 @@ # Polygon with holes if not isinstance(sub_roi[0][0], list): if first_roi: - input_img = draw_poly(sub_roi, input_img, fill=fill) first_roi = False + col = (0, 0, 0) else: # holes in ROI - input_img = draw_poly(sub_roi, input_img, col=(255, 255, 255), fill=fill) + col = (255, 255, 255) if not fill else (0, 0, 0) + input_img = draw_poly(sub_roi, input_img, col=col, fill=fill) else: # MultiPolygon with holes for sub_coord in sub_roi: if first_roi: - input_img = draw_poly(sub_coord, input_img, fill=fill) first_roi = False + col = (0, 0, 0) else: # holes in ROI - input_img = draw_poly(sub_coord, input_img, col=(255, 255, 255), fill=fill) + col = (255, 255, 255) if not fill else (0, 0, 0) + input_img = draw_poly(sub_coord, input_img, col=col, fill=fill) return input_img @@ -89,6 +91,10 @@ coords_df.to_csv("{}_{}.txt".format(tma_name, cell_type), sep='\t', index=False) + # img save + if args.img: + cv2.imwrite("{}_{}.png".format(tma_name, cell_type), img) + if __name__ == "__main__": parser = argparse.ArgumentParser(description="Split ROI coordinates of QuPath TMA annotation by cell type (classfication)") @@ -96,6 +102,7 @@ parser.add_argument("--fill", action="store_true", required=False, help="Fill pixels in ROIs") parser.add_argument('--version', action='version', version='%(prog)s 0.1.0') parser.add_argument("--all", action="store_true", required=False, help="Extracts all ROIs") + parser.add_argument("--img", action="store_true", required=False, help="Generates image of ROIs") args = parser.parse_args() if args.qupath_roi: