// Target and source images (Window name of the color images) // Note that these are window names and not filenames target="Baboon.jpg"; source="DeformedBaboon.jpg"; // Filename of the transformation (full path) // Make sure that the path does not contain any white space transformation="G:\\HOME_epfl\\plugins\\UnwarpJ\\Help\\GrayOutput_transf.txt"; // No change from here ------------------------------------------------- requires("1.35g"); // Generate separate images for each RGB channel selectImage(target); run("RGB Stack"); w=getWidth(); h=getHeight(); setSlice(1); run("Copy"); newImage("TargetRed", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "TargetRed.tif"); close(); selectImage(target); setSlice(2); run("Copy"); newImage("TargetGreen", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "TargetGreen.tif"); close(); selectImage(target); setSlice(3); run("Copy"); newImage("TargetBlue", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "TargetBlue.tif"); close(); run("RGB Color"); selectImage(source); run("RGB Stack"); w=getWidth(); h=getHeight(); setSlice(1); run("Copy"); newImage("SourceRed", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "SourceRed.tif"); close(); selectImage(source); setSlice(2); run("Copy"); newImage("SourceGreen", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "SourceGreen.tif"); close(); selectImage(source); setSlice(3); run("Copy"); newImage("SourceBlue", "8-bit White", w, h, 1); run("Paste"); saveAs("Tiff", "SourceBlue.tif"); close(); run("RGB Color"); // Apply transformation run("UnwarpJ ","-transform TargetRed.tif SourceRed.tif "+transformation+" RegisteredRed.tif"); run("UnwarpJ ","-transform TargetGreen.tif SourceGreen.tif "+transformation+" RegisteredGreen.tif"); run("UnwarpJ ","-transform TargetBlue.tif SourceBlue.tif "+transformation+" RegisteredBlue.tif"); // Form the registered color image selectImage(target); run("Duplicate...", "title=RegisteredImage"); run("RGB Stack"); open("RegisteredRed.tif"); run("8-bit"); run("Copy"); selectImage("RegisteredImage"); setSlice(1); run("Paste"); selectImage("RegisteredRed.tif"); close(); open("RegisteredGreen.tif"); run("8-bit"); run("Copy"); selectImage("RegisteredImage"); setSlice(2); run("Paste"); selectImage("RegisteredGreen.tif"); close(); open("RegisteredBlue.tif"); run("8-bit"); run("Copy"); selectImage("RegisteredImage"); setSlice(3); run("Paste"); selectImage("RegisteredBlue.tif"); close(); selectImage("RegisteredImage"); run("RGB Color"); // Delete auxiliary files File.delete("TargetRed.tif"); File.delete("TargetGreen.tif"); File.delete("TargetBlue.tif"); File.delete("SourceRed.tif"); File.delete("SourceGreen.tif"); File.delete("SourceBlue.tif"); File.delete("RegisteredRed.tif"); File.delete("RegisteredGreen.tif"); File.delete("RegisteredBlue.tif");