def main(args): args = utils.splitArgs(args) args.macenko.I_0 = numpy.array(args.macenko.I_0) utils.create_dask_client(args.dask) sample = utils.sample_pixels(args.sample) stain_matrix = rgb_separate_stains_macenko_pca(sample.T, **vars(args.macenko)) with open(args.returnParameterFile, 'w') as f: for i, stain in enumerate(stain_matrix.T): f.write('stainColor_{} = {}\n'.format(i + 1, ','.join(map(str, stain))))
def test_splitArgs(self): args = Namespace( a=1, b_a=2, b_b=3, b_c_a=4, c_a=5, ) split = cli_utils.splitArgs(args) self.assertEqual( split, Namespace( a=1, b=Namespace( a=2, b=3, c_a=4, ), c=Namespace(a=5, ), ))
def main(args): args = utils.splitArgs(args) args.snmf.I_0 = numpy.array(args.snmf.I_0) print(">> Starting Dask cluster and sampling pixels") utils.create_dask_client(args.dask) sample = utils.sample_pixels(args.sample) # Create stain matrix print('>> Creating stain matrix') args.snmf.w_init = utils.get_stain_matrix(args.stains, 2) print args.snmf.w_init # Perform color deconvolution print('>> Performing color deconvolution') w_est = htk_cdeconv.rgb_separate_stains_xu_snmf(sample.T, **vars(args.snmf)) w_est = htk_cdeconv.complement_stain_matrix(w_est) with open(args.returnParameterFile, 'w') as f: for i, stain in enumerate(w_est.T): f.write('stainColor_{} = {}\n'.format(i+1, ','.join(map(str, stain))))