changeset 1:69db8c7d4244 draft default tip

"planemo upload for repository https://github.com/BMCV/galaxy-image-analysis/tools/landmark_registration_ls/ commit 927b78d47c31714776ccdf3d16f26c3779298abb"
author imgteam
date Sun, 20 Feb 2022 15:47:16 +0000
parents 2f36165c49fb
children
files landmark_registration_ls.py landmark_registration_ls.xml
diffstat 2 files changed, 27 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/landmark_registration_ls.py	Tue Dec 29 12:10:53 2020 +0000
+++ b/landmark_registration_ls.py	Sun Feb 20 15:47:16 2022 +0000
@@ -1,43 +1,41 @@
-from scipy.linalg import lstsq
-import pandas as pd
-import numpy as np
 import argparse
 
+import numpy as np
+import pandas as pd
+from scipy.linalg import lstsq
+
+
 def landmark_registration_ls(pts_f1, pts_f2, out_f, delimiter="\t"):
-    
+
     points1 = pd.read_csv(pts_f1, delimiter=delimiter)
     points2 = pd.read_csv(pts_f2, delimiter=delimiter)
 
-    src = np.concatenate([np.array(points1['x']).reshape([-1,1]), 
-                          np.array(points1['y']).reshape([-1,1])], 
+    src = np.concatenate([np.array(points1['x']).reshape([-1, 1]),
+                          np.array(points1['y']).reshape([-1, 1])],
                          axis=-1)
-    dst = np.concatenate([np.array(points2['x']).reshape([-1,1]), 
-                          np.array(points2['y']).reshape([-1,1])], 
+    dst = np.concatenate([np.array(points2['x']).reshape([-1, 1]),
+                          np.array(points2['y']).reshape([-1, 1])],
                          axis=-1)
 
-    A = np.zeros((src.size,6))
-    A[0:src.shape[0],[0,1]] = src
-    A[0:src.shape[0],2] = 1
-    A[src.shape[0]:,[3,4]] = src
-    A[src.shape[0]:,5] = 1
+    A = np.zeros((src.size, 6))
+    A[0:src.shape[0], [0, 1]] = src
+    A[0:src.shape[0], 2] = 1
+    A[src.shape[0]:, [3, 4]] = src
+    A[src.shape[0]:, 5] = 1
     b = dst.T.flatten().astype('float64')
-    x = lstsq(A,b)
-    
+    x = lstsq(A, b)
+
     tmat = np.eye(3)
-    tmat[0,:] = x[0].take([0,1,2])
-    tmat[1,:] = x[0].take([3,4,5])
+    tmat[0, :] = x[0].take([0, 1, 2])
+    tmat[1, :] = x[0].take([3, 4, 5])
     pd.DataFrame(tmat).to_csv(out_f, header=None, index=False, sep="\t")
 
 
 if __name__ == "__main__":
-
     parser = argparse.ArgumentParser(description="Estimate transformation from points using least squares")
-    
     parser.add_argument("fn_pts1", help="File name src points")
     parser.add_argument("fn_pts2", help="File name dst points")
     parser.add_argument("fn_tmat", help="File name transformation matrix")
     args = parser.parse_args()
-    
+
     landmark_registration_ls(args.fn_pts1, args.fn_pts2, args.fn_tmat)
-
-
--- a/landmark_registration_ls.xml	Tue Dec 29 12:10:53 2020 +0000
+++ b/landmark_registration_ls.xml	Sun Feb 20 15:47:16 2022 +0000
@@ -1,11 +1,12 @@
-<tool id="ip_landmark_registration_ls" name="Landmark Registration" version="0.0.1">
+<tool id="ip_landmark_registration_ls" name="Landmark Registration" version="0.0.2" profile="20.05">
     <description>using least squares</description>
     <requirements>
         <requirement type="package" version="1.2.1">scipy</requirement>
         <requirement type="package" version="0.23.4">pandas</requirement>
         <requirement type="package" version="1.15.2">numpy</requirement>
     </requirements>
-    <command><![CDATA[ 
+    <command detect_errors="aggressive">
+    <![CDATA[ 
          python '$__tool_directory__/landmark_registration_ls.py'
          '$fn_pts1'
          '$fn_pts2'
@@ -29,5 +30,9 @@
     **What it does**
 
     This tool estimates the (affine) transformation matrix using least squares given two sets of 2d coordinates of landmarks.
+
+    Note: This tool is deprecated and may not be supported in future. Please use the tool "Landmark Registration" instead.
     </help>
+    <citations>
+    </citations>
 </tool>