magni.imaging.measurements._square_spiral module¶
Module providing public functions for the magni.imaging.measurements subpackage.
Routine listings¶
 square_spiral_sample_image(h, w, scan_length, num_points)
 Function for square spiral sampling an image.
 square_spiral_sample_surface(l, w, speed, sample_rate, time)
 Function for square spiral sampling a surface.

magni.imaging.measurements._square_spiral.
square_spiral_sample_image
(h, w, scan_length, num_points)[source]¶ Sample an image using a square spiral pattern.
The coordinates (in units of pixels) resulting from sampling an image of size h times w using a square spiral pattern are determined. The scan_length determines the length of the path scanned whereas num_points indicates the number of samples taken on that path.
Parameters:  h (int) – The height of the area to scan in units of pixels.
 w (int) – The width of the area to scan in units of pixels.
 scan_length (float) – The length of the path to scan in units of pixels.
 num_points (int) – The number of samples to take on the scanned path.
Returns: coords (ndarray) – The coordinates of the samples arranged into a 2D array, such that each row is a coordinate pair (x, y).
Notes
The orientation of the coordinate system is such that the width w is measured along the xaxis whereas the height h is measured along the yaxis.
Examples
For example,
>>> import numpy as np >>> from magni.imaging.measurements import square_spiral_sample_image >>> h = 10 >>> w = 10 >>> scan_length = 50.0 >>> num_points = 12 >>> np.set_printoptions(suppress=True) >>> square_spiral_sample_image(h, w, scan_length, num_points) array([[ 5. , 5. ], [ 6.28571429, 5.97619048], [ 4.38095238, 3.71428571], [ 2.42857143, 5.92857143], [ 4.95238095, 7.57142857], [ 7.57142857, 6.02380952], [ 7. , 2.42857143], [ 2.83333333, 2.42857143], [ 1.14285714, 4.9047619 ], [ 1.35714286, 8.85714286], [ 5.52380952, 8.85714286], [ 8.85714286, 8.02380952]])

magni.imaging.measurements._square_spiral.
square_spiral_sample_surface
(l, w, speed, sample_rate, time)[source]¶ Sample a surface area using a square spiral pattern.
The coordinates (in units of meters) resulting from sampling an area of size l times w using a square spiral pattern are determined. The scanned path is determined from the probe speed and the scan
time
.Parameters:  l (float) – The length of the area to scan in units of meters.
 w (float) – The width of the area to scan in units of meters.
 speed (float) – The probe speed in units of meters/second.
 sample_rate (float) – The sample rate in units of Hertz.
 time (float) – The scan time in units of seconds.
Returns: coords (ndarray) – The coordinates of the samples arranged into a 2D array, such that each row is a coordinate pair (x, y).
Notes
The orientation of the coordinate system is such that the width w is measured along the xaxis whereas the length l is measured along the yaxis.
Examples
For example,
>>> import numpy as np >>> from magni.imaging.measurements import square_spiral_sample_surface >>> l = 1e6 >>> w = 1e6 >>> speed = 7e7 >>> sample_rate = 1.0 >>> time = 12.0 >>> np.set_printoptions(suppress=True) >>> square_spiral_sample_surface(l, w, speed, sample_rate, time) array([[ 0.0000005, 0.0000005], [ 0.0000004, 0.0000004], [ 0.0000006, 0.0000007], [ 0.0000005, 0.0000003], [ 0.0000002, 0.0000007], [ 0.0000008, 0.0000007], [ 0.0000006, 0.0000002], [ 0.0000001, 0.0000004], [ 0.0000003, 0.0000009], [ 0.0000009, 0.0000008], [ 0.0000009, 0.0000001], [ 0.0000002, 0.0000001]])