Systems and methods for accelerated processing of light-sheet microscopy data

A streamlined orthogonal transformation algorithm for LSFM integrates deskewing and rotation, addressing computational inefficiencies in LSFM, achieving 10-fold faster processing and enabling real-time visualization of large datasets on standard workstations.

WO2025222122A1PCT designated stage Publication Date: 2025-10-23RGT UNIV OF CALIFORNIA
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
PCT/US2025/025373
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-18
Filing Date
2025-04-18
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

Current light-sheet fluorescence microscopy (LSFM) techniques face challenges in processing large image datasets efficiently, leading to slow pre-processing times and limitations in live visualization due to computational resource constraints, particularly with tilted-sample-scan modes like LLSM, which result in skewed data and require substantial memory and time for deskewing, rotation, and image stitching, hindering real-time data inspection and visualization.

Method used

A non-sinusoidal, orthogonal transformation algorithm integrates deskewing and rotation in a streamlined process, reducing computational resources and processing times by at least 10 times, enabling real-time visualization on standard workstations with a single GPU.

Benefits of technology

The algorithm accelerates pre-processing of large image stacks by 10 times, allowing real-time visualization and analysis of 4D data, overcoming computational limitations and enabling efficient processing on conventional hardware.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2025025373_23102025_PF_FP_ABST
    Figure US2025025373_23102025_PF_FP_ABST
Patent Text Reader

Abstract

Systems and methods for visualizing sample data. The systems and methods may include obtaining, from a sample collection device, a plurality of image samples compiled in an image sample stack, and processing, using a processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data, where processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack. The systems and methods may further include providing the transformed image sample data to be displayed for visualization.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEMS AND METHODS FOR ACCELERATED PROCESSING OF LIGHT-SHEET MICROSCOPY DATACROSS-REFERENCE TO RELATED APPLICATION

[0001] This application claims the benefit of and priority to U.S. Provisional Patent Application No. 63 / 636,069, filed April 18, 2024, the contents of which are incorporated herein by reference in its entirety.STATEMENT OF GOVERNMENT SUPPORT

[0002] This invention was made with government support under T32EB009380 awarded by the National Institutes of Health. The government has certain rights in the invention.BACKGROUND

[0003] Light-sheet fluorescence microscopy (LSFM) is a type of fluorescence microscopy employed in cell and developmental biology. By avoiding photobleaching above and below the in-focus plane (e.g., compared with widefield and confocal microscopes, etc.), while rejecting out-of-focus background (e.g., compared with widefield microscope, etc.), LSFM offers enhanced temporal resolution and duration for three-dimensional time-lapse imaging (4D; x, y, z, time).

[0004] Currently, in light-sheet fluorescence microscopy, there are various configurations for how a light sheet and a detection objective are implemented. However, one major distinction in the implementations arises from how the two-objective configuration is oriented with respect to the sample. While an orthogonal angle between the light sheet optical axis and the sample substrate is common, tilted angles are sometimes adopted. Current titled implementations include, for example, inverted and open-top selective plane illumination microscopy (iSPIM12 and open-top SPIM13), lattice light-sheet microscopy (LLSM), oblique plane microscopy, swept confocally-aligned planar excitation microscopy (SCAPE), and the like.

[0005] Traditionally, there are two modes by which a sample substrate can move with respect to a fixed light sheet to acquire volumetric data. In the detection-objective-scan mode, thesample substrate moves in synchrony with the detection objective scanning in the z-axis, producing upright images identical to those acquired from conventional microscopes. However, this mode is limited in the acquisition speed and field-of-view. In a faster samplescan mode (e.g., tilted-sample-scan LSFM, etc.), the sample substrate moves at an angle (e.g., an oblique angle, etc.) relative to the detection objective optical axis. However, this results in skewed volumetric data, which cannot be readily visualized, and as such undergoes coordinate transformation processing in order to be viewed and analyzed.

[0006] Certain implementations of tilted-sample-scan LSFM (e.g., LLSM, etc.) may produce large sets of skewed image stack data, often exceeding multiple gigabytes (GB) per volumetric stack. Pre-processing these stacks typically involves deskewing, axis scaling, and rotation. However, current pre-processing methods (e.g., 3D image deconvolution and affine transforms, GPU-accelerated 3D image deconvolution and affine transforms, for example cudaDeconl9, etc.) demand substantial memory, and employ data cropping to accelerate preprocessing speed.100071 Currently, large multi-dimensional image transformation calculations are most efficiently done in a graphic processing unit (GPU), for example because GPUs have more cores (e.g., 2-3 orders of magnitude more, etc.) than a central processing unit (CPU). However, a GPU is limited by the on-board dedicated memory size. When the memory requirements of a processing task exceed the GPU limit, memory shuffling between GPU and CPU can create excessive overhead, which can increase the computation time.[00081 Alternatively, high performance computing (HPC) clusters can provide a few hundred GB of memory but are less accessible and / or flexible for routine data pre-processing, or realtime visualization. Further, large volumetric data can be processed using a CPU, which typically comes with up to several hundred GB of memory; however, this processing is slower (e.g., relative to HPCs, GPUs, etc.). As such, in order to process large data volumes (e.g., using a CPU, etc.), the data is subdivided, processed, and combined again using image stitching, which can increase the computation time and / or may introduce artifacts (e.g., due to misalignment, etc.).

[0009] In some current implementations, image stacks may take under a minute to acquire (e.g., using tilted-sample-scan LSFM, etc.); however, these image stacks may take hours to be pre-processed using currently accessible hardware. This lag (e.g., as a result of the preprocessing time, etc.) limits the ability for live visualization of a sample as it is being imaged. However, live sample visualization and / or data inspection during acquisition is an important feedback mechanism for microscopy (e.g., for screening for suitable regions of interest, re- centering the stage, focusing adjustments, etc.), which are not feasible with current tilted- sample-scan LSFM techniques. As a result, in some instances data (e.g., microscopy data, etc.) has to be discarded after acquisition, for example because a flaw is revealed in the visual, post-collection inspection.SUMMARY

[0010] Systems and methods described herein advantageously provide a transformation algorithm that is deigned to accelerate the pre-processing of LSFM data (e.g., by at least 10 times). In particular, the systems and methods described herein provide a transformation algorithm (e.g., a non-sinusoidal, orthogonal transformation algorithm, for example a Walsh- Hadamard transformation algorithm, etc.) that integrates deskeweing and rotation of a raw dataset in a streamlined (e.g., single, etc.) transformation. Advantageously, systems and methods of various embodiments described herein enable fast processing of large image datasets (e.g., LSFM datasets, tilted-sample-scan LSFM, including LLSM, etc.), while significantly reducing the computational resources required (e.g., memory usage, etc.) and / or processing run times (e.g., by at least 10 times) of large image stacks. For example, and as will be discussed herein, for a 2 GB image stack, the systems and methods described herein enable faster processing (e.g., 10-fold faster pre-processing, etc.), which enables live visualization of 4D data as it is captured by a microscope.10011 [ Systems and methods of some embodiments presented herein demonstrate a linear runtime, compared to the cubic and quadratic runtimes of the other approaches. For example, implementing the systems and methods of some embodiments, pre-processing a raw dataset including 3D volume of 2 GB (512x1536x600 pixels, etc.) can be accomplished in 3 seconds using a standard GPU with 24 GB of memory on a single workstation, which is particularlynotable for various light-sheet microscopy applications (e.g., LLSM, etc.). Further, the systems and methods of various embodiments presented herein facilitate processing data efficiently on conventional workstations, which allows for real-time data processing and visualization. For example, applied to 4D LLSM datasets (e.g., human hepatocytes, lung organoid tissue, brain organoid tissue, etc.), the systems and methods of example embodiments can provide rapid and accurate pre-processing (e.g., within seconds, etc.). Importantly, such pre-processing speeds allow visualization of a raw data stream (e.g., microscope data, etc.) in real time, significantly improving the usability of certain imaging techniques (e.g., LLSM) in various applications (e.g., biological research, etc.).

[0012] In addition, and as indicated above, the systems and methods of example embodiments provide a transformation algorithm that integrates (e.g., combines, etc.) deskeweing and rotation of a raw datasets in a streamlined (e.g., single, etc.) transformation. Advantageously, this integration reduces the computational resources needed for processing (e.g., memory allocation, memory usage, etc.), resulting in faster and / or more efficient processing compared to traditional techniques.

[0013] In summary, various embodiments systems and methods provided herein provide a transformation algorithm that advantageously offers the ability to process large datasets on standard workstations (e.g., a single GPU with 24 GB memory, etc.), thereby enabling realtime visualization and / or analysis that was not previously attainable (e.g., due to computational limitations, slow pre-processing speeds, etc.) using current imaging and / or processing techniques.

[0014] In example embodiments, a method for visualizing sample data is provided. The method may include obtaining, from a sample collection device, a plurality of image samples compiled in an image sample stack. The method may include processing, using a processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data, where processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack, and providing the transformed image sample data to be displayed for visualization.

[0015] In some example embodiments, a system for visualizing sample data is provided. The system comprises a processing unit comprising a memory and one or more processors. In some embodiments, the processing unit is configured to obtain, from a sample collection device, a plurality of image samples compiled in an image sample stack, and process the image sample stack to transform the plurality of image samples into transformed image sample data, where processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack. The processing unit may further be configured to provide the transformed image sample data to be displayed for visualization.

[0016] In other example embodiments, a non-transitory computer-readable media is provided. The non-transitory computer-readable media may have computer-executable instructions embodied therein that, when executed by one or more processors, cause the one or more processors to perform operations comprising obtaining, from a sample collection device, a plurality of image samples compiled in an image sample stack. In some embodiments, the operations comprise processing, using a processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data, wherein processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack, and providing the transformed image sample data to be displayed for visualization.BRIEF DESCRIPTION OF THE FIGURES

[0017] FIG. l is a block diagram of an example system for collecting and processing data for visualization and analysis.

[0018] FIG. 2 is a flow diagram a process for collecting and processing data for visualization and analysis, according to some embodiments.

[0019] FIG. 3 is an illustration of a process for collecting and processing data for visualization and analysis, according to some embodiments.

[0020] FIG. 4 is an illustration of an example conventional process for processing data for visualization and analysis.

[0021] FIG. 5 is a graphical illustration of example information associated with data preprocessing operations.

[0022] FIG. 6 is another graphical illustration of example information associated with data pre-processing operations.

[0023] FIG. 7 is an illustration of information associated with data pre-processing operations, according to some embodiments.

[0024] FIG. 8 is a flow diagram a process for collecting and processing data for visualization and analysis, according to some embodiments.DETAILED DESCRIPTION

[0025] Referring generally to the Figures, systems and methods for collecting, processing, visualizing, and / or analyzing date and information (e.g., image sample data, raw stacks of image data, etc.) are shown and described. For example, various systems and methods of example embodiments implement a transformation operation (e.g., a transformation algorithm) that integrates (e.g., combines, etc.) deskeweing and rotation of a raw datasets in a streamlined (e.g., single, etc.) transformation operation. Advantageously, this integration reduces the computational resources needed for processing (e.g., memory allocation, memory usage, etc.), resulting in faster and / or more efficient processing compared to traditional techniques. Further, various systems and methods of certain embodiments provide a transformation algorithm that advantageously offers the ability to process large datasets on standard workstations (e.g., a single GPU with 24 GB memory, etc.), thereby enabling realtime visualization and / or analysis that was not previously attainable (e.g., due to computational limitations, slow pre-processing speeds, etc.).

[0026] Referring now to FIG. 1, a block diagram of a system for collecting, processing, and / or visualizing data and information, shown as system 100, is shown, according to some embodiments. The system 100 is shown to include a computing system 102, a device 104, and a display 106. In certain embodiments, the components of the system 100 are connected (e.g., in wired or wireless communication, for example via a network, etc.). It should be noted that the number and type of components shown in FIG. 1 is merely illustrative and, in otherembodiments, implementations of the system 100 may have additional, fewer, and / or different components than those illustrated in FIG. 1, including those mentioned elsewhere herein.

[0027] In an example embodiment, the computing system 102 is a computer system or computer work station. For example, the computing system 102 may be a stationary terminal (e.g., a desktop computer, a laptop computer, a tablet, or another suitable non-mobile device, etc.). In an example embodiment, and as described herein, the computing system 102 includes a 16-core processor, a 24 GPU, and a 128 GB memory. In some embodiments, the computing system 102 is a personal mobile computing device (e.g., a smart phone, a tablet, a mobile device, etc.). In other embodiments, the computing system 102 is implement using cloud computing services, for example using one or more computing devices (e.g., operating alone and / or in combination). In yet other embodiments, the computing system 102 is implemented using computing architectures like multiple distributed servers, and / or similar computing devices and / or systems, is distributed across multiple systems or devices, and / or is another suitable computing system. In some embodiments, the computing system 102 is integrated with the device 104, the display 106, and / or other components described herein.

[0028] In some embodiments, the device 104 is a device configured to capture (e.g., collect, obtain, etc.) audio, visual, and / or audiovisual information. For example, the device 104 may be a microscope. In an example embodiment, the device 104 is a lattice light sheet microscope. In certain embodiments, the device 104 is a microscope that includes, for example, an excitation objective lens (e.g., 0.6 NA excitation objective lens, etc.), a detection objective lens (e.g., a 1.0 NA detection objective lens, etc.), and / or a camera (e.g., for image acquisition, etc.). In other embodiments, the device 104 includes additional and / or different components, including, for example, a laser (e.g., a light beam laser, etc.), and / or another suitable component. It should be understood that while the device 104 is described herein as a lattice light sheet microscope, it is contemplated that in other embodiments the device 104 is another suitable audio, visual, and / or audiovisual device configured to capture information (e.g., another suitable microscope, camera, etc.). In some embodiments, the device 104 is integrated with the computing system 102.

[0029] In certain embodiment, the display 106 is a device configured to display information and / or data. For example, the display 106 may be or include one or more interfaces (e.g., a graphical user interface, a text-based interface, a user-facing web service, a web service that provides pages to a user, etc.), for example for visualizing, viewing, controlling, and / or otherwise interfacing with the computing system 102 and / or the device 104. In some embodiments, the display 106 is integrated with the computing system 102 and / or the device 104.

[0030] In some embodiments, the computing system 102, the device 104, and / or the display 106 are configured to communicate. For example, the computing system 102, the device 104, and / or the display 106 may be configured to communicate information and / or data, as described herein. In an example embodiment, and as described herein, the device 104 is configured to collect audio, visual, and / or audiovisual information (e.g., capture images, etc.). For example, the device 104 may collect 3D images of a biological sample (e.g., monolayer hepatocytes, lung organoids, brain organoids, etc.). In certain embodiments, the device 104 collects a stack of 3D images (e.g., 3D raw image stacks, including, for example a 512x1536x200 pixel image stack, 512x1536x600 pixel image stack, 512x1536x800 pixel image stack, 512x1024x1500 pixel image stack, etc.). The device 104 may communicate the raw 3D image data (e.g., 3D image stack data, etc.) to the computing system 102. As described herein, the computing system 102 may perform (e.g., implement, execute, etc.) one or more image and / or data processing techniques (e.g., a non-sinusoidal, orthogonal transformation, etc.), for example to transform the raw 3D image data (e.g., into data that can be visualized and / or viewed, etc.). Further, the computing system 102 may communicate the processed data to the display 106 for display, for example in real-time or near real-time.

[0031] Referring still to FIG. 1, the computing system 102 is shown to include a communications interface 150 and a processing circuit 152, having a processor 154 and a memory 156.

[0032] The communications interface 150 may include wired or wireless communications interfaces, for example for communicating data between the computing system 102 and one or more systems or device (e.g., the device 104, the display 106, etc.). In some embodiments,the communications interface 150 facilitates communications between the computing system 102 and one or more external applications and / or interfaces, for example to allow a remote user or operator to control, monitor, and / or adjust components of the computing system 102. Further, the communications interface 150 may be configured to communicate with external systems and / or devices using any of a variety of communications protocols (e.g., HTTP(S), WebSocket, CoAP, MQTT, Bluetooth, Wi-Fi, near-field communication, etc.) and / or any of a variety of other protocols. The computing system 102 may be configured to obtain, ingest, process, and / or analyze data from any type of system or device, regardless of the communications protocol used by the system or device.

[0033] As shown, the computing system 102 includes the processing circuit 152 having the processor 154 and the memory 156. While shown as single components, it should be appreciated that the computing system 102 may include one or more processing circuits, including one or more processors and memory.

[0034] The processor 154 may be a general purpose or specific purpose processor, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGAs), a group of processing components, or other suitable processing components. The processor 154 may further be configured to execute computer code or instructions stored in the memory 156 or received from other computer readable media (e.g., USB or other local storage, network storage, a remote server, etc.).

[0035] The memory 156 may include one or more devices (e.g., memory units, memory devices, storage devices, etc.) for storing data and / or computer code for completing and / or facilitating the various processes described in the present disclosure. The memory 156 may include random access memory (RAM), read-only memory (ROM), hard drive storage, temporary storage, non-volatile memory, flash memory, optical memory, or any other suitable memory for storing software objects and / or computer instructions. In some embodiments, the memory 156 may include database components, object code components, script components, and / or any other type of information structure for supporting the various activities and information structures described in the present disclosure. The memory 156 may be communicably connected to the processor 154 via the processing circuit 152, andmay include computer code for executing e.g., by the processor 154) one or more processes described herein. When the processor 154 executes instructions stored in the memory 156, the processor 154 may configure the processing circuit 152 to complete such activities.

[0036] As shown, the computing system 102 also includes a processing unit 160. In an example embodiment, the processing unit 160 is a graphics processing unit, or another suitable processing unit designed for digital processing (e.g., audio, visual, audiovisual data processing, etc.). The processing unit 160 is shown to include a memory 162, a data compiler 164, and a transformer 166. The memory 162 may include components similar to the memory 156, as described herein.

[0037] In some embodiments, the data compiler 164 is configured to obtain, compile, and / or communicate data. For example, the data compiler 164 may be configured to obtain and / or compile audio, visual, and / or audiovisual data (e.g., 3D image data, raw 3D image data, etc.). In certain embodiments, the data compiler 164 is configured to compile image data in image data stacks (e.g., 3D image stacks, raw 3D image stacks, etc.) obtained from the device 104. For example, the data compiler 164 may compile images (e.g., slices, image slices, etc.) into image stacks, for example resulting in a 4D representation of the images (e.g., a 4D movie, etc.). Further, the data compiler 164 may be configured to communicate the compiled data (e.g., 3D image stacks, raw 3D image stacks, etc.) to the transformer 166.

[0038] In an example embodiment, the transformer 166 is configured to obtain, transform, and / or communicate data. For example, the transformer 166 may be configured to obtain compiled image data (e.g., from the data compiler 164, etc.), and / or implement one or more transformation operations on the compiled data (e.g., 3D image stacks, raw 3D image stacks, etc.). In an example embodiment, the transformer 166 is or includes one or more transformation algorithms, for example to implement one or more transformation operations. For example, the transformer 166 may be or include a non-sinusoidal, orthogonal transformation algorithm, for example to implement one or more rotation and / or affine transformation operations. In some embodiments, the transformer 166 is or includes one or more algorithms configured to perform orthogonal, symmetric, involutive, and / or linear operations. In other embodiments, the transformer 166 is or includes one or more algorithmsconfigured to implement another suitable transformation operation (e.g., an audio, visual, audiovisual dataset transformation, etc.).

[0039] According to an example embodiment, the transformer 166 is configured to implement one or more transformation operations (e.g., simultaneously, in series, in parallel, etc.), for example on one or more data sets (e.g., 3D image stack data, raw 3D image stack data, pixel data associated with the 3D image stacks, etc.). For example, the transformer 166 may be configured to implement a rotation operation on the compiled images (e.g., compiled 3D image stack data, etc.), for example to rotate the images 90 degrees (e.g., along the y-axis, etc.). In certain embodiments, the transformer 166 is configured to implement the rotation operation by swapping two image axes and flipping one axis. Further, the transformer 166 may be configured to implement a scaling operation on the compiled images (e.g., the rotated images, etc.), for example to scale the lateral dimension (e.g., by a first factor, etc.) and / or the axial dimension (e.g., by a second factor, etc.). In some embodiments, the transformer 166 is configured to implement a scaling operation, for example to account for data characteristics (e.g., differences in pixel sizes, a first factor, etc.), sample characteristics (e.g., a thickness of the sample, a second factor, etc.), and / or data acquisition characteristics (e.g., a rate of movement of a substrate in acquiring image samples, etc.). Yet further, the transformer 166 may be configured to perform a shearing operation on the compiled images (e.g., the rotated images, the rotated and scaled images, etc.). In an example embodiment, the transformer 166 is configured to implement a shearing operation, for example to account for the effects of other transformation operations (e.g., rotating the images, scaling the images, both rotating and scaling the images, etc.).

[0040] In an example embodiment, the transformer 166 is further configured to communicate the transformed data (e.g., transformed image data, etc.). For example, the transformer 166 may be configured to communicate the transformed data to the memory 162 (e.g., for storage, etc.) and / or the display 106 (e.g., for display and visualization, etc.).

[0041] It should be understood that while the transformer 166 is described herein as being or including one or more algorithms configured to implement one or more transformation operations (e.g., on the images, on the compiled 3D image stacks, on the image data, etc.), itis contemplated that the transformer 166 may be or include one or more other suitable coordinate transformation algorithms, machine learning algorithms, rules and / or rules-based logic, and / or another suitable computer or data processing technique (e.g., linear or logistic regression, instance-based algorithms, regularization algorithms, decision trees, cluster analysis, association rule learning, artificial neural networks, deep learning, combined learning, reinforced learning, dimensionality reduction, support vector machines, etc.).

[0042] Referring now to FIG. 2, a process for obtaining, processing, and visualizing data and / or information, shown as process 200, is shown, according to some embodiments. According to an example embodiment, the process 200 can be implemented using any and / or all of the components of the system 100 of FIG. 1, as described herein.

[0043] In some embodiments, process 200 includes obtaining image sample data (202). According to an example embodiment, the device 104 is configured to collect (e.g., obtain, etc.) image samples (e.g., images, image sample data, image data, etc.), and / or communicate the image sample data to the computing system 102. As described herein, the device 104 may be a lattice light sheet microscope configured to collect image samples (e.g., images, image data, etc.), for example 3D images. As described herein, the images (e.g., 3D images, etc.) may be collected in slices and / or combined, for example to form image stacks (e.g., 3D image stacks, etc.).

[0044] In certain embodiments, the device 104 is configured to collect image samples while the objectives are in one or more predetermined configurations (e.g., under one or more conditions, in one or more states, etc.). For example, the device 104 may collect image samples while the objectives are excited and / or tilted. In some embodiments, the device 104 may collect image samples while a multiple Bessel beam light sheet pattern (e.g., NA Max 0.4, NA Min 0.35, etc.) is applied, a hexagonal lattice light sheet pattern (e.g., NA Max 0.5, NA Min 0.42, etc.) is applied, and / or any other suitable excitation technique is implemented. In certain embodiments, the device 104 collects image samples at predetermined exposure times (e.g., 50 msec exposure time, etc.) and / or at predetermined intervals (e.g., every 300 nm, etc.). In other embodiments, the device 104 collects image samples slices, for example having predetermined characteristics (e.g., 200, 600, 1500 slices, and / or of 60, 180, 450micron depth, etc.) and / or using predetermined frame rates (e.g., 10, 30, and / or 75 seconds per frame, etc.).

[0045] In an example embodiment, the device 104 is configured to collect image samples while the objectives are tilted, for example with respect to the sample plane. In some embodiments, the device 104 is configured to collect image samples while the objective is tilted 30 degrees and / or another suitable angle (e.g., 15, 25, 35, 40, 45, 50, 55, etc. degrees). In certain embodiments, the device 104 is configured to collect image samples while the objective and / or sample is / are moving (e.g., translating, shifting, sliding, etc.). For example, the device 104 may be configured to collect image samples while the sample stage is translating along an axis (e.g., an x-axis, a horizontal axis, etc.).

[0046] In certain embodiments, the device 104 is configured collect image samples (e.g., images, image data, etc.) of biological samples. For example, the device 104 may be configured to collect image samples of monolayer hepatocytes, lung organoids, brain organoids, and / or any other suitable biological samples. It should be understood that the biological samples may be prepared using any suitable preparation technique.

[0047] Further, the device 104 may be configured to collect image samples (e.g., image data, etc.) having any suitable characteristic and / or configuration. For example, the device 104 may be configured to collect an image sample that is 512x1536x200 pixels (e.g., a raw 3D image stack that is 0.7 GB in size, etc.), 512x1536x600 pixels (e.g., a raw 3D image stack that is 2.1 GB in size, etc.), 512x1024x1500 pixels (e.g., a raw 3D image stack that is 3.4 GB in size, etc.), and / or has any other suitable characteristic and / or configuration.

[0048] In some embodiments, and as described herein, the collected image samples (e.g., image data, images, image slices, etc.), are compiled (e.g., using the device 104, the computing system 102, the data compiler 164, etc.). For example, the collected images may be compiled into image stacks (e.g., raw 3D image stacks, etc.), for example resulting in a 4D representation of the images (e.g., a 4D movie, etc.). As discussed herein, in certain embodiments due to the configuration of the collected and / or compiled image samples (e.g., images, image data, etc.), the image data may not be readily viewable, and such may need certain transformation processing.

[0049] In some embodiments, the process 200 includes processing the image samples (204). According to an example embodiment, the computing system 102 is configured to process the image samples (e.g., the image sample data, etc.). For example, and as described herein, the computing system 102 (e.g., the transformer 166, etc.) may be configured to implement one or more transformation operations (e.g., deskewing, rotation, etc.) on the images (e.g., the image data, etc.), for example to prepare the images for analysis and / or visualization.

[0050] According to certain embodiments, the transformer 166 is configured to receive the compiled image data (e.g., raw 3D image stacks, raw 3D image stack data, etc.) and implement one or more transformation operation on the compiled images.

[0051] For example, the transformer 166 may be configured to implement a rotation operation, for example to rotate the compiled images by 90 degrees. This rotation operation (e.g., transformation, etc.) may be achieved using an axis swap. In an example embodiment, the rotation operation can be implemented using the following matrix transformation:

[0052] In the above matrix transformation, x, y, z are the raw data coordinates, and Xrot, yrot, zrot are the coordinates after a rotation (e.g., a 90 degree rotation, a 90 degree clockwise rotation, etc.).

[0053] Further, the transformer 166 may be configured to implement a scaling operation (e.g., an affine transformation, etc.), for example to scale the compiled images (e.g., the rotated compiled images, etc.). In an example embodiment, the transformer 166 is configured to implement the scaling operation of the rotated images (e.g., the image data after the rotation operation, etc.). In some embodiments, the transformer 166 is configured to implement the scaling operation in a first dimension (e.g., an axial dimension, using a first factor or characteristic, etc.), a second dimension (e.g., another axial dimension, using a third factor or characteristic, etc.), and / or another suitable dimension. This scaling operation (e.g.,affine transformation, “&z”, etc.) may be implemented using the following matrix transformation:

[0054] In the above matrix transformation, Q is the angle between the light sheet optical axis and the sample substrate, dz is the step size in the sample substrate movement (e.g., rate of movement, speed, amount, etc.), and dx is the pixel size (e.g., camera pixel size, image pixel size, etc.).

[0055] Yet further, the transformer 166 may be configured to implement a shearing operation (e.g., an affine transformation, etc.), for example to account for the effects of other transformation operations (e.g., the rotation operation, the scaling operation, etc.). The shearing operation (e.g., affine transformation, “FT”, etc.) may be implemented using the following matrix transformation:

[0056] The transformer 166 may further be configured to implement a computation operation (e.g., combination operation, etc.), for example to determine the transformed image sample information. For example, the transformer 166 may be configured to determine the coordinates of the transformed image samples (e.g., the transformed image sample coordinates, etc.), for example by combining the scaling operation and the shearing operation(e.g., the scale matrix Sxz, the shear matrix H, etc.) into a single matrix (i.e., “7”). The operation may be implemented using the following calculation:

[0057] The transformer 166 may be further configured to implement a transformation (e.g., affine transformation, etc.), for example to determine the coordinates of the final image sample (e.g., for analysis, visualization, etc.). The operation may be implemented using the following matrix transformation:

[0058] In the above matrix transformation, x, ’ y z ’ are the pre-processed data coordinates (e.g., for visualization, analysis, etc.).

[0059] It should be understood that the process 200 (e.g., 204) may include implementing one or more transformation operations described herein, for example to prepare collected images for analysis and / or visualization. Compared to conventional transformation techniques, which includes applying a series of coordinate transformation matrices, the transformation processes described in the process 200 (e.g., 204) implement transformation operations that result in similar transformed image samples (e.g., compared to conventional techniques), but which are accomplished in shorter runtimes and / or using less computational resources (e.g., memory, etc.).

[0060] For example, conventional transformation techniques may include transformation operations that apply a matrix transformation to desekew the volume along an axis (e.g., a z- axis, etc.), a matrix to scale the axis to get a volume (e.g., to scale the z-axis to get isotropicvolume, etc.), a matrix to rotate the volume (e.g., to rotate the volume along the y-axis, etc.), a series of affine transformations (e.g., affine transformations in a specified order, etc.), and a translation matrix (e.g., to center the images relative to the original coordinates, etc.) in order to obtain the final processed (e.g., transformed, etc.) images that are suitable for visualization and analysis. Conversely, the transformation processes described in the process 200 (e.g., 204) obtain the processed (e.g., transformed, etc.) images suitable for visualization and / or analysis in fewer transformation operations, resulting in shorter runtimes and / or less computational resource consumption.[0061 | In some embodiments, process 200 includes communicating the image data for display (206). According to an example embodiment, after processing the image sample data (e.g., the raw 3D images, the raw 3D image stack data, etc.), the processed images and / or image data (e.g., transformed images) may be communicated for display. For example, the computing system 102 may communicate the processed images and / or processed image data to the display 106, for example for presentation to a user. A user or operator may view the images (e.g., via the display 106, etc.), for example for visualization and / or analysis.

[0062] In certain embodiments, one or more of the subprocesses of the process 200 can be repeated and / or completed in a series or sequence. For example, following visualization and / or analysis of the processes sample, the user or operator may desired to modify the sample, and / or acquire additional samples (e.g., as discussed with reference to 202), for example for quality control (e.g., data collection quality control, data quality control, etc.) and / or . In this regard, the sample and / or acquisition parameters may be modified (e.g., the sample moved, translated, tilted, etc.; imaging parameters modified, etc.), and the process 200 may be repeated, for example to collect, process, and / or visualize additional sample information.[ 00631 As described herein, the process 200 may be implemented to obtain (e.g., collect, etc.), process, and / or provide (e.g., display) visual information (e.g., image samples, 4D image samples, etc.), for example to allow for real-time or near real-time visualization of information (e.g., collected samples, etc.). For example, the process 200 may include acquiring image samples (e.g., via the device 104, etc.), as discussed with reference to 202.This process may take 30 seconds, or any other suitable amount of time (e.g., 1, 15, 45, 60, 90, etc. seconds). The acquired image samples may then be processed (e.g., via the computing system 102, the processing unit 160, the transformer 166, etc.), as discussed with reference to 204. The processing of the acquired image samples may occur in real-time, or near real-time (e.g., as the sample is acquired, etc.), and may take a couple seconds (e.g., 1, 2, 3, 5, etc. seconds). In some embodiments, the processing time is nominal (e.g., less than 1 second, etc.) and / or is another suitable amount of time. The processed image samples may then be displayed to the user (e.g., via the display 106, etc.), as discussed with reference to 206. For example, the processed image samples may be displayed to the user (e.g., via the display 106, etc.) in real-time or near real-time (e.g., within a couple seconds, etc.), resulting in a real-time or near real-time (e.g., 1, 2, 3, 5, etc. seconds) visualization of the processed image samples.

[0064] In this regard, compared to conventional collection, processing, and display techniques (e.g., which take approximate 1 minute for processing, resulting in over 1 minute for real-time visualization, etc.), the process 200 provides a method for acquiring, processing, and displaying image samples in real-time (or near-real time, etc.), or withing a few seconds post-acquisition (e.g., 1, 2, 3, 5, etc. seconds). As described herein, existing preprocessing techniques (e.g., algorithms, transformation operations, etc.) are too computationally expensive to allow real-time visualization of large dataset (e.g., 3D image stacks, 4D datasets, etc.), which can result in a workflow that separates (e.g., de-couples, removes, etc.) image acquisition from data quality control. The systems and methods described herein address these deficiencies, for example by providing a process that accelerates the processing speeds (e.g., by 10-fold, etc.) for larger datasets (e.g., greater than 2 GB, etc.), thereby allowing for real-time, or near real-time, visualization (e.g., 4D visualization, etc.) and quality control.

[0065] Referring now to FIG. 3, an illustration of a process for obtaining, processing, and visualizing data and / or information, shown as process 300, is shown, according to some embodiments. According to an example embodiment, the process 300 can be implemented using any and / or all of the components of the system 100 of FIG. 1, as described herein. Further, the process 300 may include similar processes or subprocesses as those described in the process 200 of FIG. 2.

[0066] As shown, process 300 includes obtaining sample data (302). According to an example embodiment, the device 104 is configured to collect (e.g., obtain, etc.) image samples (e.g., images, image sample data, image data, etc.), and / or communicate the image sample data to the computing system 102. As described herein, the device 104 may be a lattice light sheet microscope configured to collect image samples (e.g., images, image data, etc.), for example 3D images. As shown, and as described herein, the device 104 may collect image samples while the sample is illuminated and / or titled at an angle (e.g., 30 degrees, 45 degrees, etc.) relative to the sample stage. Further, the device 104 may collect the image samples while the stage is in motion, and / or while the sample is excited (e.g., light is applied to the sample, a beam or laser is directed to the sample, etc.).

[0067] The process 300 is shown to include compiling the collected image samples (304). For example, the collected image samples (e.g., slices, etc.) may be compiled into image stacks (e.g., raw 3D image stacks, etc.). As described herein, the image stacks may be raw image data, for example resulting in a 4D representation of the images (e.g., a 4D movie, etc.). The image samples may be compiled via one or more components described herein (e.g., the device 104, the computing system 102, the data compiler 164, etc.).

[0068] The process 300 may include processing the collected image samples. For example, the process 300 may include processing the compiled image samples (e.g., the raw image data, the raw stack image data, the raw 3D stack image data, etc.). As shown, the processing may include implementing a rotation operation (306), a scaling operation (308), and / or a shearing operation (310). The operations 306-310 may be similar to the operations described with reference to FIG. 2. As discussed herein, the processing operations may be implemented by applying one or more matrix and / or coordinate transformation operations to the collected image samples. For example, the rotation operation (306) may be a 90 degree rotation (e.g., achieved by an axis swap and axis flip), the scaling operation (308) may scale a plurality of axis (e.g., the z-axis, the x-axis, etc.) to match the dimensions of the final processed volume, and shearing operation (310) may transform the volume into sample coordinates. Further, the processing operations may be implemented in series, simultaneously, in real-time, and / or in near real-time.

[0069] Compared to various conventional data and / or image processing techniques, the processes described herein (e.g., the process 200, the process 300, etc.) may result in less computational resource consumption (e.g., memory usage, etc.). For example, various conventional data and / or image processing techniques (e.g., for tilted-sample-scan LSFM images, etc.) require a three-part process before visualization and further processing (e.g., as illustrated in FIG. 4). First, the image stack is deskewed to shift each plane and recapitulate the sample geometry (322), second the stack is isotropically scaled to match the lateral and axial pixel sizes (324), and third the deskewed and scaled image stack is rotated so that the vertical axes in the data and the sample are aligned (326). During this process, conventional data processing and / or image processing techniques use padded regions (e.g., zero-value pixels, etc.), shown as regions 320 in FIG. 4, to facilitate the deskewing, scaling, and rotation. As the imaged sample volume increases, the computations resources (e.g., memory size, etc.) needed for these operations increases (e.g., polynomially, etc.). For example, using conventional processing techniques, for a 512x1536x800 stack, about 90% of the volume used for rotation is padding. This padding (e.g., empty pixels, etc.) lead to a large resource consumption (e.g., memory overhead, memory storage, etc.), which slows down computation time even for the most efficient hardware using the most accelerated implementations. To address these issues, the processes described herein (e.g., the processes of FIG. 2, FIG. 3, etc.) combine processing operations (e.g., deskewing and rotation, etc.) into an efficient operation, which reduces memory usage (e.g., memory allocation during the processing processes, etc.) by not requiring the additional memory beyond that of the processed volume, as illustrated in at least FIG. 3 (e.g., see 310, etc.).

[0070] Referring now to FIGS. 5-6, graphical illustrations of example information associated with data pre-processing operations are shown. The illustration 500 and the illustration 600 illustrate the run time for processing raw data of different sizes (e.g., illustration 500 of FIG. 5) and the processed data size compared to the raw data at different sizes (e.g., illustration 600 of FIG. 6). Further, the illustrations 500, 600 illustrate the processing information using the process described herein (e.g., shown as 510) compared to a first conventional processing technique, involving deskewing and rotation implemented using a GPU-based affine transformation (e.g., shown as 512), and a second conventional processing technique using a lattice lightsheet data processing package (e.g., shown as 514).(0071 ] As shown in FIGS. 5-6, a plurality of sample datasets may be used to acquire image samples, as described herein. As discussed herein, the datasets may be image samples of biological samples and may be of any suitable size and / or configuration. For example, the sample datasets shown may include a 0.7 GB, 512x1536x200 pixel, raw 3D stack of adherent hepatocytes, a 2.1 GB, 512x1536x600 pixel, raw 3D stack of a cortical brain organoid, and a 3.4 GB, 512x1024x1500 pixel, raw 3D stack of a branching lung organoid. Further, the sample datasets were processed using the different techniques, and the results were compared, as illustrated in FIGS. 5-6.|0072| As shown in FIG. 5, the first conventional processing technique (e.g., shown as 512) illustrated a cubic runtime (e.g., a least-square fitting of the polynomial of y=4.82x3+1.49 as the best fit, etc.). As described herein, the larger raw data size slows down the overall computational speeds, for example due to inefficient GPU-CPU data shuffling to handle the raw data size. Further, the second conventional processing technique (e.g., shown as 514) illustrated a quadratic runtime (e.g., a least-square fitting of the polynomial of y=2.21x2+0.64 as the best fit, etc.). By limiting the data range to only the sample region, the second conventional processing technique reduced the processed file size and runtime compared to the first conventional processing technique; however, the data cropping can lead to suboptimal results in instances where important regions of data are removed and / or where extra padding is added, as described herein. Conversely, implementing the processing techniques described herein (e.g., shown as 510), the datasets can be processed in a linear runtime (e.g., a least-square fitting of the polynomial of y=1.27x+0.15 as the best fit, etc.).

[0073] As illustrated in FIG. 6, neither the first conventional processing technique (e.g., shown as 512) or the second conventional processing technique (e.g., shown as 514) were able to process datasets (e.g., raw 3D stacks, etc.) larger than 2.5 GB, for example due to memory overflow. Rather, in order to process larger datasets using these conventional techniques, the datasets would have to be split into smaller regions. Conversely, implementing the processing techniques described herein (e.g., shown as 510), the full range of datasets can be processed (e.g., by scaling the processed data linearly with the raw data size), allowing for much larger datasets to be processed compared to the other conventional processing techniques (e.g., using the same computing system, etc.).

[0074] Referring now to FIG. 7, an illustration of example information associated with data pre-processing operations is shown, shown as illustration 700, according to an example embodiment. The illustration 700 illustrates scenarios associated with visualizing collected samples (e.g., live visualization, real-time visualization, etc.) using the process described herein (e.g., shown as 710) compared to a first conventional processing technique, involving deskewing and rotation implemented using a GPU-based affine transformation (e.g., shown as 712). Another conventional processing technique (e.g., the processing technique 514 discussed with reference to FIGS. 5-6) was contemplated; however, the technique may by unable to process the data to computational limitations (e.g., insufficient memory, etc.).

[0075] As shown in FIG. 7, image samples may be acquired. For example, image samples of a cortical brain organoid sample may be acquired. The image samples may be of any suitable size and / or configuration. For example, the image samples illustrated in FIG. 7 may be imaged in 3D using a 512x1536 camera crop for 600 scans at an exposure time for each scan of 50 milliseconds, resulting in 30 seconds acquisition time per 3D volume.

[0076] As illustrated in FIG. 7, the conventional processing technique (e.g., shown as 712) may take about 70 seconds to process a single volumetric frame. As shown, this results in the first frame being available for visual inspection after the acquisition of the fourth frame. As discussed herein, the conventional processing technique results in significant delays (e.g., over 60 seconds, 70 seconds, etc.) between data acquisition and visualization, which can result in data quality and / or acquisition issues. Conversely, the process described herein (e.g., shown as 710) may complete data processing in approximately 3 seconds. As show, this results in the first frame being available for visual inspection before acquisition of the second frame is completed, thereby enabling synchronous visualization of acquired images.

[0077] Referring now to FIG. 8, a process for obtaining, processing, visualizing, and / or analyzing data and information, shown as process 800, is shown, according to some embodiments. According to an example embodiment, the process 800 can be implemented using any and / or all of the components of the system 100 of FIG. 1, as described herein. Further, the process 800 may include similar processes or subprocesses described herein, for example in process 200 of FIG. 2 and / or process 300 of FIG. 3.(0078] Process 800 is shown to include obtaining image sample data (802), according to an example embodiment. In an example embodiment, 802 is the same as or similar to 202 described with reference to FIG. 2. As described herein, the collected image samples (e.g., image data, images, image slices, etc.) may be compiled (e.g., into image stacks, raw 3D image stacks, etc.), for example resulting in a 4D representation of the images (e.g., a 4D movie, etc.).

[0079] In an example embodiment, the process 800 includes preparing the image samples (804). According to an example embodiment, the computing system 102 is configured to prepare the image samples (e.g., the compiled image sample data, etc.). For example, the computing system 102 (e.g., the transformer 166, etc.) may be configured to implement one or more processing operations (e.g., on or using the compiled image sample data, etc.). As described herein, the operations of 804 may be combined with and / or included in one or more processes or subprocesses of the process 800, as described herein.

[0080] According to an example embodiment, preparing the image samples includes performing a deconvolution operation. For example, a deconvolution operation may be performed on the compiled image samples (e.g., compiled image sample data, etc.) using a point spread function (PSF). The PSF may be acquired with similar characteristics (e.g., mode, etc.) as the image sample data is obtained (e.g., as discussed with reference to 802). Advantageously, by acquiring the PSF with similar characteristics, and / or performing the PSF on the compiled image samples, the PSF allows for more accurate deconvolution of the image samples (e.g., by using the same acquisition technique, etc.) and / or results in faster deconvolution due to the smaller raw data size (e.g., compared to following implementation of a deskewing and / or rotation operation, etc.).

[0081] In an example embodiment, the process 800 includes processing the image samples (806). According to an example embodiment, the computing system 102 (e.g., the transformer 166, etc.) is configured to implement one or more transformation operations (e.g., deskewing, rotation, etc.) on the prepared image samples (e.g., the prepared image sample data, for example from 804, etc.). 806 may be the same as or similar to 204 describedwith reference to FIG. 2. According to an example embodiment, 806 and / or 804 may utilize parallel-computing techniques (e.g., GPU-based parallel-computing techniques, etc.).

[0082] In some embodiments, the processing of the image samples (e.g., 806) may include a dividing operation. For example, for datasets that exceed a predetermined computing resource threshold (e.g., exceed an on-board GPU memory capacity, a capacity of the memory 162, etc.) the dataset may be divided into a plurality of datasets (e.g., data chunks, for example of various shapes or sizes). The dataset may be divided into a plurality of datasets having suitable characteristics (e.g., size, shape, etc.). In an example embodiment, the characteristics and / or configurations of the divided datasets is configured to balance computing resource consumption (e.g., memory usage, etc.) and / or runtime, for example to reduce runtime while ensuring the amount of data movement (e.g., between memory, etc.) maximizes the computational efficiencies.

[0083] In an example embodiment, process 800 includes communicating the image data (808). According to an example embodiment, after preparing and / or processing the image sample data (e.g., the raw 3D images, the raw 3D image stack data, etc.), the processing images and / or data (e.g., transformed images, etc.) may be communicated for visualization and / or analysis. 808 may be the same as or similar to 206 described with reference to FIG. 2. For example, the computing system 102 may communicate the processed images and / or processed image data to the display 106, for example for presentation and / or visualization by a user.

[0084] Further, the computing system 102 may communicate the processed images and / or processed image data to another computing component (e.g., processor, processing unit, etc.) and / or application, for example for further analysis and / or processing. For example, in the case of particle tracking, another operation (e.g., tracking operation, etc.) may be implemented using the processed image data and / or processed image, for example for particle segmentation and / or tracking. Further, in the case of mitochondrial motility and dynamics, another operation (e.g., tracking operation) may be implemented using the processed image data and / or processed image, for example to track and / or extract functional information from mitochondrial networks.Example Configurations

[0085] As utilized herein with respect to numerical ranges, the terms “approximately,” “about,” “substantially,” and similar terms generally mean + / - 10% of the disclosed values, unless specified otherwise. As utilized herein with respect to structural features (e.g., to describe shape, size, orientation, direction, relative position, etc.), the terms “approximately,” “about,” “substantially,” and similar terms are meant to cover minor variations in structure that may result from, for example, the manufacturing or assembly process and are intended to have a broad meaning in harmony with the common and accepted usage by those of ordinary skill in the art to which the subject matter of this disclosure pertains. Accordingly, these terms should be interpreted as indicating that insubstantial or inconsequential modifications or alterations of the subject matter described and claimed are considered to be within the scope of the disclosure as recited in the appended claims.

[0086] It should be noted that the term “example” and variations thereof, as used herein to describe various embodiments, are intended to indicate that such embodiments are possible examples, representations, or illustrations of possible embodiments (and such terms are not intended to connote that such embodiments are necessarily extraordinary or superlative examples).

[0087] The term “coupled” and variations thereof, as used herein, means the joining of two members directly or indirectly to one another. Such joining may be stationary (e.g., permanent, or fixed) or moveable (e.g., removable or releasable). Such joining may be achieved with the two members coupled directly to each other, with the two members coupled to each other using a separate intervening member and any additional intermediate members coupled with one another, or with the two members coupled to each other using an intervening member that is integrally formed as a single unitary body with one of the two members. If “coupled” or variations thereof are modified by an additional term (e.g., directly coupled), the generic definition of “coupled” provided above is modified by the plain language meaning of the additional term (e.g., “directly coupled” means the joining of two members without any separate intervening member), resulting in a narrower definition thanthe generic definition of “coupled” provided above. Such coupling may be mechanical, electrical, or fluidic.

[0088] References herein to the positions of elements (e.g., “top,” “bottom,” “above,” “below”) are merely used to describe the orientation of various elements in the FIGURES. It should be noted that the orientation of various elements may differ according to other example embodiments, and that such variations are intended to be encompassed by the present disclosure.

[0089] The hardware and data processing components used to implement the various processes, operations, illustrative logics, logical blocks, modules and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, or any conventional processor, controller, microcontroller, or state machine. A processor also may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some embodiments, particular processes and methods may be performed by circuitry that is specific to a given function. The memory (e.g., memory, memory unit, storage device) may include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage) for storing data and / or computer code for completing or facilitating the various processes, layers and modules described in the present disclosure. The memory may be or include volatile memory or non-volatile memory, and may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present disclosure. According to an example embodiment, the memory is communicably connected to the processor via a processing circuit and includes computer code for executing (e.g., by the processing circuit or the processor) the one or more processes described herein.(0090] The present disclosure contemplates methods, systems, and program products on any machine-readable media for accomplishing various operations. The embodiments of the present disclosure may be implemented using existing computer processors, or by a special purpose computer processor for an appropriate system, incorporated for this or another purpose, or by a hardwired system. Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor. By way of example, such machine- readable media can comprise RAM, ROM, EPROM, EEPROM, or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machines to perform a certain function or group of functions.[0091 | Although the figures and description may illustrate a specific order of method processes, the order of such processes may differ from what is depicted and described, unless specified differently above. Also, two or more processes or subprocesses may be performed concurrently or with partial concurrence, unless specified differently above.

[0092] It is important to note that any element disclosed in one embodiment may be incorporated or utilized with any other embodiment disclosed herein. For example, the process 200 described with reference to FIG. 2 may be incorporated in the process 800 described with reference to FIG. 8. Although only one example of an element from one embodiment that can be incorporated or utilized in another embodiment has been described above, it should be appreciated that other elements of the various embodiments may be incorporated or utilized with any of the other embodiments disclosed herein

Claims

WHAT IS CLAIMED IS:

1. A method for visualizing sample data, comprising: obtaining, from a sample collection device, a plurality of image samples compiled in an image sample stack; processing, using a processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data, wherein processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack; and providing the transformed image sample data to be displayed for visualization.

2. The method of claim 1, wherein the sample collection device is a lattice light sheet microscope, and wherein the processing unit is a graphic processing unit.

3. The method of claim 2, wherein the plurality of image samples are collected with an objective of the lattice light sheet microscope angled between 30 to 45 degrees relative to a plane of each sample.

4. The method of claim 1, wherein processing the image sample stack includes sequentially performing the rotation operation, the scaling operation, and the shearing operation.

5. The method of claim 4, wherein the rotation operation includes a 90 degree rotation of each image sample of the image sample stack.

6. The method of claim 5, wherein the rotation operation includes a rotation of each image sample of the image sample stack, and wherein each rotation is implemented by switching a first axis and a second axis, and inverting one of the first axis or the second axis.

7. The method of claim 4, wherein the scaling operation includes a scaling of each image sample of the image sample stack, wherein each scaling is implemented by scaling a first axis by a first factor and a second axis by a second factor.

8. The method of claim 7, wherein the first factor is associated with a rate of movement of a substrate of each of the plurality of image samples, and the second factor is associated with a pixel size of a camera of the sample collection device.

9. The method of claim 1, wherein providing the transformed image sample data includes providing the transformed image sample data to a display to be displayed for near real-time visualization.

10. The method of claim 1, wherein processing, using the processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data is performed in a linear runtime.

11. A system for visualizing sample data, the system comprising: a processing unit comprising a memory and one or more processors, the processing unit configured to: obtain, from a sample collection device, a plurality of image samples compiled in an image sample stack; process the image sample stack to transform the plurality of image samples into transformed image sample data, wherein processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack; and provide the transformed image sample data to be displayed for visualization.

12. The system of claim 11, wherein the sample collection device is a lattice light sheet microscope.

13. The system of claim 11, wherein the processing unit is a graphic processing unit.

14. The system of claim 11, further comprising a display device, wherein the transformed image sample data is provided to the display device to be displayed for near real-time visualization.

15. The system of claim 11, wherein processing the image sample stack includes performing a deconvolution operation using a point spread function, and sequentially performing the rotation operation, the scaling operation, and the shearing operation.

16. The system of claim 11, wherein the plurality of image samples are of a sample positioned on a substrate, wherein each of the plurality of image samples are obtained while the sample collection device illuminates the sample to excite the sample.

17. The system of claim 11, wherein the plurality of image samples are of a sample positioned on a substrate, wherein each of the plurality of image samples are obtained while the sample collection device moves the substate relative to a camera of the sample collection device.

18. A non-transitory computer-readable media having computer-executable instructions embodied therein that, when executed by one or more processors, cause the one or more processors to perform operations comprising: obtaining, from a sample collection device, a plurality of image samples compiled in an image sample stack; processing, using a processing unit, the image sample stack to transform the plurality of image samples into transformed image sample data, wherein processing the image sample stack includes implementing a rotation operation, a scaling operation, and a shearing operation on the image sample stack; and providing the transformed image sample data to be displayed for visualization.

19. The non-transitory computer-readable media of claim 18, wherein the sample collection device is a lattice light sheet microscope, and wherein the processing unit is a graphic processing unit.

20. The non-transitory computer-readable media of claim 19, wherein processing the image sample stack includes sequentially performing the rotation operation, the scaling operation, and the shearing operation.

Citation Information

Patent Citations

  • Anti-Spalling Edging

    US20150016870A1

  • Dynamically configuring an image processing function

    US20150029222A1

  • Algorithm and device for image processing

    US20170365046A1

  • Measuring breast density using breast computed technology

    US20180008220A1

  • High-Resolution, Real-Time Imaging With Adaptive Optics and Lattice Light Sheets

    US20190113731A1