Extraction of spinal centerline based on optimal path search

JP2025507163APending Publication Date: 2025-03-13KONINKLIJKE PHILIPS NV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024553815
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-05-04
Filing Date
2023-03-07
Publication Date
2025-03-13

AI Technical Summary

Benefits of technology

【0009】 本発明の第2の態様によれば、最適経路探索装置が提供される。該装置は、コンピュータ実行可能命令を記憶するように構成されたメモリ、及びコンピュータ実行可能命令を実行するように構成された少なくとも1つのプロセッサを有する。該少なくとも1つのプロセッサはコンピュータ実行可能命令を実行して最適経路探索装置に、スキャンデータを、スキャンされた脊椎画像の3次元アレイとして受信させ、受信されたスキャンデータから3次元ボクセル単位の脊椎管セグメンテーションを実行して、スキャンされた脊椎画像に対応する二進3次元アレイを生成させ、生成された二進3次元アレイと同じ寸法を有する、該生成された二進3次元アレイに対応する逆密度3次元アレイを生成させ、逆密度3次元アレイを所定の寸法にダウンサンプリングさせ、プログラミングベースの最適脊椎管経路探索を実行して、最適な脊椎管経路を生成させ、逆密度3次元アレイを生成された最適な脊椎管経路の周囲において一層高い解像度及び限られた寸法でサンプリングさせ、プログラミングベースの最適脊椎管経路探索を実行して、修正された最適な脊椎管経路を生成させ、サンプリング及びプログラミングベースの最適脊椎管経路探索を、段階的に解像度を増加させると共に寸法を減少させることにより繰り返させ、最適な脊椎管経路の精度が所定の閾値を満たすかを判定させ、及び最終的な最適な脊椎管経路を脊椎管中心線として生成させ、ここで、再フォーマットされた画像が脊椎管中心線としての最終的な最適な脊椎管経路に従って生成される。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025507163000001_ABST
    Figure 2025507163000001_ABST
Patent Text Reader

Abstract

A method and apparatus for finding the centerline of an optimal spinal canal path is disclosed. Imaging scans, such as computed tomography (CT) scans, are used to diagnose rib and spinal fractures. The spine images are typically reformatted into a straightened CPR (curved planar reformatted). A dynamic programming-based technique for finding an optimal path from a spinal canal segmentation is disclosed. The disclosed method and apparatus overcome spinal canal segmentation errors that result in spinal canal gaps and unrealistic image distortions. The disclosed technique is insensitive to segmentation errors even in the presence of high segmentation noise. The disclosed technique generates a binary 3D image corresponding to the scanned spine image, performs density estimation to generate a 3D with the same dimensions as the original binary 3D, and performs a dynamic programming-based optimal spinal canal path search with a coarse-to-fine optimal path search strategy to accelerate the optimal spinal canal path search.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to the field of medical imaging, and in particular to a method and apparatus for extracting a spinal canal centerline that is less susceptible to segmentation errors. [Background technology]

[0002] Medical imaging is often used to visualize a patient's anatomy, where the visualization data is used to diagnose disease or injury. In trauma situations, medical personnel often perform imaging scans, such as computed tomography (CT) scans, to diagnose rib and spinal fractures.

[0003] To help radiologists interpret CT spine images, spine images are often reformatted into straightened curved reformatted (CPR). The reformatted image can be a 2D or 3D straightened view according to the curve of the spinal canal. The first step in generating the reformatted image is to extract the centerline of the spinal canal. This is usually achieved by performing a three-dimensional (3D) spinal canal segmentation and then extracting the centerline of the segmentation. If the segmentation result is good, it will not be difficult to extract the centerline. However, there are frequently some errors in the segmentation. Sometimes, parts of the spinal canal are missing (gaps between slices). In other cases, there is a false segmentation where the predicted spinal canal does not reflect the actual spinal canal. These issues complicate the extraction of the centerline.

[0004] If the extracted spinal canal centerline is incorrect, the reformatted image will also be incorrect, resulting in unrealistic image distortions in the resulting image. Interpretation of imaging scans, more specifically trauma or emergency department scans, is a time-demanding task that must be performed with great care to avoid missing critical findings. The process of reformatting image scans to 2D or 3D straightened views following the curve of the spinal canal is performed to assist medical professionals in diagnosing critical rib and spinal fractures. Reformatted images with unrealistic image distortions defeat the purpose of the reformatted image. Summary of the Invention [Problem to be solved by the invention]

[0005] Thus, there is a need for innovative techniques for extracting the spinal canal center that are less susceptible to segmentation errors.

[0006] It is an object of the present invention to provide a technique for extracting the spinal canal center that is less susceptible to segmentation errors. [Means for solving the problem]

[0007] The technique is applicable to virtually any spine image that is reformatted into a 2D or 3D rectified view according to the spinal canal curve. These spine images can be generated by a number of imaging systems, including CT, CT arms, single photon emission computed tomography CT (SPECT-CT), magnetic resonance CT (MR-CT), positron emission tomography CT (PET-CT), and magnetic resonance imaging (MRI) systems.

[0008] According to a first aspect of the present invention, there is provided a method for generating an optimal spinal canal path, the method comprising the steps of receiving scan data as a 3D array of scanned spine images, and performing a 3D voxel-wise spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine images. The method further comprises the steps of generating an inverse density 3D array corresponding to the generated binary 3D array, having the same dimensions as the generated binary 3D array, downsampling the inverse density 3D array to a predetermined dimension, performing a programming-based optimal spinal canal path search to generate an optimal spinal canal path, sampling the inverse density 3D array at a higher resolution and limited dimensions around the generated optimal spinal canal path, performing a programming-based optimal spinal canal path search to generate a modified optimal spinal canal path; repeating the sampling and programming-based optimal spinal canal path search by incrementally increasing the resolution and decreasing the dimensions, determining whether the accuracy of the optimal spinal canal path meets a predetermined threshold, and generating a final optimal spinal canal path as a spinal canal centerline, and a reformatted image is generated according to the final optimal spinal canal path as a spinal canal centerline.

[0009] According to a second aspect of the present invention, there is provided an optimum path search apparatus, comprising: a memory configured to store computer-executable instructions; and at least one processor configured to execute the computer-executable instructions. The at least one processor executes computer-executable instructions to cause an optimal path finding device to receive scan data as a 3D array of scanned spine images, perform 3D voxel-by-voxel spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine images, generate an inverse density 3D array corresponding to the generated binary 3D array having the same dimensions as the generated binary 3D array, down-sample the inverse density 3D array to a predetermined dimension, perform a programming-based optimal spinal canal path search to generate an optimal spinal canal path, sample the inverse density 3D array at a higher resolution and limited dimensions around the generated optimal spinal canal path, perform a programming-based optimal spinal canal path search to generate a revised optimal spinal canal path, repeat the sampling and programming-based optimal spinal canal path search by incrementally increasing resolution and decreasing dimensions, determine whether an accuracy of the optimal spinal canal path meets a predetermined threshold, and generate a final optimal spinal canal path as a spinal canal centerline, where a reformatted image is generated according to the final optimal spinal canal path as the spinal canal centerline.

[0010] In a third aspect of the present invention, a non-transitory computer readable medium having stored thereon instructions for causing a processing circuit to perform a process is provided. The process includes the steps of receiving scan data as a 3D array of scanned spine images, performing a 3D voxel-by-voxel spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine images, generating an inverse density 3D array corresponding to the generated binary 3D array having the same dimensions as the generated binary 3D array, downsampling the inverse density 3D array to a predetermined dimension, performing a programming-based optimal spinal canal path search to generate an optimal spinal canal path, sampling the inverse density 3D array at a higher resolution and limited dimensions around the generated optimal spinal canal path, performing a programming-based optimal spinal canal path search to generate a revised optimal spinal canal path, repeating the sampling and programming-based optimal spinal canal path search by incrementally increasing the resolution and decreasing the dimensions, determining whether an accuracy of the optimal spinal canal path meets a predetermined threshold, and generating a final optimal spinal canal path as a spinal canal centerline, and a reformatted image is generated according to the final optimal spinal canal path as the spinal canal centerline.

[0011] In one embodiment, spinal canal segmentation is performed using machine learning or deep learning techniques to generate a binary 3D array in which a value of 1 is assigned to each spinal canal voxel and a value of 0 is assigned to the background, and each voxel in the inverse density 3D array is assigned a floating point value, such that the higher the density value of a voxel with a 1 in the binary 3D array, the lower the floating point value assigned to the corresponding voxel in the inverse density 3D array.

[0012] In another embodiment, a cost-pointer array is created that corresponds to the inverse density 3D array, where each element in the cost-pointer array includes a cost component and a pointer component, where each cost component in the cost-pointer array corresponds to a voxel at the same location in the inverse density 3D array, and the pointer component is a 3D vector that points to physical coordinates in the binary 3D array.

[0013] In a preferred embodiment, the programming-based optimal spinal canal path search is a dynamic programming-based optimal spinal canal path search. Density estimation is applied to generate an inverse density 3D array, the density estimation being performed via a kernel density estimation technique, the kernel being at least one of Gaussian, linear, cosine, uniform, Epanechnikov, exponential, and top-hat. [Brief description of the drawings]

[0014] [Figure 1] FIG. 1 is a schematic diagram of an exemplary imaging system. [Diagram 2] FIG. 2 shows examples of a straightened CPR when there are no errors in the spine segmentation and centerline extraction, and a straightened spine when there are errors in the spine segmentation and centerline extraction. [Diagram 3] FIG. 3 is a flow chart illustrating a method for generating a combined rib and spine view according to some embodiments. [Figure 4] FIG. 4 illustrates an example of a coarse-to-fine optimal path finding approach according to some embodiments. [Diagram 5] FIG. 5 illustrates a three-dimensional optimal path search according to some embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0015] 1 illustrates an imaging system 100, such as a computed tomography (CT) system. The imaging system 100 includes a generally stationary gantry 102 and a rotating gantry 104. The rotating gantry 104 is rotatably supported by the stationary gantry 102 and rotates about an examination region 106 relative to the stationary gantry 102 about a longitudinal or z-axis.

[0016] A patient support 112, such as a couch, supports an object or subject, such as a human patient, in the examination region 106. The support 112 is configured to move the object or subject to be examined in order to bring it into position, scan it, and transport it out of position.

[0017] A radiation source 108, such as an x-ray tube, is rotatably supported by the rotating gantry 104. The radiation source 108 rotates with the rotating gantry 104 and emits radiation that traverses an examination region 106.

[0018] A radiation sensitive detector array 110 arcs at an angle across the examination region 106 opposite the radiation source 108. The detector array 110 includes one or more rows of detectors extending along a z-axis direction to detect radiation traversing the examination region 106 and generate projection data indicative thereof.

[0019] A general purpose computing system or computer serves as an operator console 114 and includes input devices 116, such as a mouse, keyboard, etc., and output devices 122, such as a display monitor, film, etc. The console 114 allows an operator to control the operation of the system 100, including control of an image processor 118, which includes an optimal path finder 120. The image processor 118 receives data representative of three-dimensional (3D) diagnostic images produced by the imaging system 100 and generates reformatted images displaying continuous linear visualizations of the rib cage and spine. The reformatted images may be output to the output device 122 for viewing by medical personnel.

[0020] The optimal path planning device 120 may be configured as part of the image processing device 118 or may be configured external to the image processing device 118. It should be understood that the optimal path planning device 120 may be implemented via a microprocessor executing computer readable instructions encoded or embedded in a computer readable storage medium, such as physical memory and other non-transitory media. Additionally or alternatively, the microprocessor may execute computer readable instructions conveyed by carrier waves, signals and other transitory (or non-transitory) media.

[0021] The optimal path finder 120 receives the scan data as a 3D array of scanned spine images. The 3D array of scanned spine images is generated by the imaging processor 118 of the imaging system 100. The optimal path finder 120 performs spinal canal segmentation by performing a 3D voxel-wise spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine images. The optimal path finder 120 generates an inverse density 3D array corresponding to the generated binary 3D array and having the same dimensions as the generated binary 3D array. The rationale for generating the inverse density 3D array will be explained in more detail later. The optimal path finder 120 performs downsampling of the inverse density 3D array to a predetermined dimension and a programming-based optimal spinal canal path search to generate an optimal spinal canal path.

[0022] The programming-based optimal spinal path search is then performed to generate a revised optimal spinal path. The sampling and programming-based optimal spinal path search are repeated until the accuracy of the optimal spinal path meets a predetermined threshold. Sampling is repeated around the 3D density image volume with higher resolution and limited dimensions each time. The programming-based optimal spinal path search is repeated with higher resolution and limited dimensions for each iteration sampling, and the accuracy of the generated optimal path improves with each sampling cycle. This is an example of a coarse-to-fine strategy implemented to expedite the optimal path search. Once the optimal spinal path meets a predetermined threshold, a final optimal spinal path is generated as the spinal centerline. A reformatted image can then be generated with the final optimal spinal path as the spinal centerline.

[0023] 2 is an example of a straightened CPR without errors in spine segmentation and centerline extraction, and a straightened spine with errors in spine segmentation and centerline extraction. A reformatted image with a correctly extracted spinal canal centerline is shown at 202. A reformatted image with errors in the extracted spinal canal centerline is shown at 204. The reformatted image at 204 shows a reformatted image with unrealistic image distortions and gaps between slices. As such, the reformatted image at 204 would not aid a medical professional in making a diagnosis.

[0024] 3 is a flow chart illustrating a method for generating a combined view of the ribs and spine according to one embodiment. At 302, image scan data is received. The image scan data is a 3D array, with each element in the 3D array representing a voxel. At 304, a 3D voxel-wise spinal canal segmentation is performed using the received scan data to generate a binary 3D array corresponding to the scanned spine image. In the generated binary 3D array, values ​​"1" indicate spinal canal voxels and values ​​"0" indicate background. The spinal canal segmentation can be performed by any deep learning or machine learning method or other conventional algorithm.

[0025] At 306, an inverse density 3D array is generated. In the generated binary 3D array, values ​​"1" indicate spinal canal voxels and values ​​"0" indicate background. After generating the inverse density 3D array, the higher the density of "1" voxels in the original volume, the lower the value assigned to the voxel in the inverse density volume.

[0026] If the optimal path search is performed at full resolution over the entire inverse density volume, the process is likely to place a very heavy burden on available resources and the process is likely to be slow. Therefore, in one embodiment, a sparse-to-dense optimal path search strategy is implemented to accelerate the process. At 308, downsampling of the inverse density 3D array to a predetermined dimension is performed. In other words, the inverse density 3D array is downsampled to a low resolution array. At 310, a programming-based optimal spinal path search is performed to generate an optimal spinal path. Then, at 312, the inverse density 3D array is sampled around the image volume of the optimal spinal path generated at 310. The sampling at 312 is performed at a limited dimension and at a higher resolution.

[0027] At 314, a programming-based optimal spinal canal path search is performed on the sampled image volume 312 to generate a revised optimal spinal canal path. The sampling at 312 and the programming-based optimal spinal canal path search at 314 are repeated until the optimal spinal canal accuracy meets a predetermined threshold. If the optimal spinal canal accuracy meets a predetermined threshold at 316, a final optimal spinal canal path is generated at 318. A reformatted image is then generated with the final optimal spinal canal path generated at 318.

[0028] FIG. 4 illustrates an example of a coarse-to-fine optimal path finding approach according to one embodiment.

[0029] At 402, the inverse density 3D array is downsampled to a predetermined resolution. As shown at 402, the predetermined resolution is 25 mm×25 mm×25 mm. That is, sampling is performed once every 25 mm along the z-axis, once every 25 mm around the x-axis, and once every 25 mm around the y-axis. The resolutions shown at 402, 406, and 410 are used for ease of explanation and should not be construed as limiting the scope.

[0030] At 404, a programmatically based optimal spinal canal path search is performed to generate a low resolution optimal spinal canal path. At 406, the inverse density 3D array is downsampled to a resolution of 25 mm×5 mm×5 mm in a volume of limited dimensions around the optimal spinal canal path generated at 404. In this case, sampling is performed once every 25 mm along the z axis, once every 5 mm around the x axis, and once every 5 mm around the y axis. In this way, the resolution is increased.

[0031] At 408, a programming-based optimal spinal path search is performed to generate a revised optimal spinal path at a higher resolution (medium resolution). At 410, downsampling is performed at a resolution of 15 mm x 1 mm x 1 mm in a volume of limited dimensions around the optimal spinal path generated at 408. In this case, the sampling is performed once every 15 mm along the z-axis, once every 1 mm around the x-axis, and once every 1 mm around the y-axis. In this way, the resolution is further increased. At 412, a programming-based optimal spinal path search is performed to generate a final optimal spinal path at a high resolution.

[0032] It should be understood that while the coarse-to-fine strategy illustrated in FIG. 4 has three cycles of downsampling and optimal path searching, this is for ease of explanation and should not be construed as limiting the scope.

[0033] Figure 5 shows the 3D optimal route search with cost analysis.

[0034] Typically, the spinal canal moves monotonically upward from the sacrum to the head. After segmentation, if background voxels are assigned high costs and predicted spinal canal voxels are assigned low costs in the predicted spinal canal binary 3D array, the path from the bottom slice to the top slice with the lowest cost will be along the actual spinal canal, even in the presence of noise, as long as the actual spinal canal voxels dominate the foreground. Furthermore, for the predicted spinal canal voxels, if high density voxels are assigned low costs and low density voxels are assigned high costs, the shortest path with the lowest cost will be along the centerline of the actual spinal canal, since the center of the spinal canal usually has higher density.

[0035] The search for the optimal path from the sacrum to the head or from the head to the sacrum can use a dynamic programming method. Starting from the second slice of the 3D binary array, each voxel calculates the cost from its neighbors in the last slice to itself. The neighbors can cover a small area or all voxels in the last slice. The cost includes three parts. The first part is the physical distance from the voxel in the last slice to the current voxel in the current slice. The second part is the inverse of the density of the selected voxel in the last slice. The reason for using the inverse density is to find the optimal path with the lowest accumulated cost, but the path should pass through voxels with the highest density possible. Thus, the inverse of the density makes the high density not contribute much to the accumulated cost.

[0036] The density estimation can use kernel density estimation methods. The kernel can be Gaussian, linear, cosine, etc. Using kernel density can reduce the impact of outlier contributions to the density of a given voxel. Given a voxel, the estimated density takes into account the number of voxels surrounding the voxel. The density can be a 3D density or a slice-level 2D density.

[0037] The third part is the cost already calculated in the last slice for the selected voxel. After calculating the cost from the neighboring voxels in the last slice to the voxel for each voxel in the current slice, the current voxel is assigned a pointer to the neighboring voxel in the last slice with the lowest cost, and this lowest cost is set as the accumulated cost of the current voxel. After performing the calculation from the first slice to the last slice, each voxel in the last slice has a cost value and a pointer value to a voxel in the penultimate slice. Then, starting from the last slice, the optimal path is found as follows: In the last slice, find the voxel with the lowest cost. This is the starting voxel. According to the pointer assigned to the voxel, find the second voxel in the penultimate slice. Then, according to the pointer assigned to the second voxel, the third voxel in the penultimate slice can be found. Therefore, for each slice, the optimal path can be generated by concatenating all the pointers.

[0038] As shown with reference to FIG. 3, a 3D voxel-by-voxel spinal canal segmentation is performed using the received scan data to generate a binary 3D array corresponding to the scanned spine image. In the generated binary 3D array, values ​​"1" indicate spinal canal voxels and values ​​"0" indicate background. An inverse density 3D array is generated. In the generated binary 3D array, values ​​"1" indicate spinal canal voxels and values ​​"0" indicate background. After generating the inverse density 3D array, the higher the density of "1" voxels in the original volume, the lower the value assigned to the voxel in the inverse density volume.

[0039] In a preferred embodiment, a dynamic programming-based optimal spinal canal path search is performed. For example, assuming the estimated density of a voxel is d, then 1-d is the inverse density. However, other mathematical calculations can be used to invert the density.

[0040] Figure 5 shows the inverse density 3D array as a cost-pointer array. From the inverse density 3D array, another 3D array called a cost-pointer array is created. The cost-pointer array has the same dimensions as the inverse density 3D array. Each element in the cost-pointer array corresponds to a voxel at the same position in the inverse density 3D array and includes two parameters, namely a cost value parameter and a pointer value parameter. The pointer parameter is a 3D vector that points to a physical coordinate in the original spinal canal segmentation binary image.

[0041] For elements of the first slice 502 of the cost-pointer array, all cost values ​​are assigned a value of zero, and each pointer value is set as the coordinate of its corresponding voxel. The index of the current slice 504 is set as i+1, and the index of the adjacent slice 506 below the current slice is i. For any voxel V in the current slice 504 of the inverse density array, i+1,j For any voxel V in slice i+1, we calculate the cost from the neighboring voxels in the defined region of slice i 506. i+1,j and voxel V in slice i i,k The cost between is calculated as follows:

number

[0042] From equation (1), for any voxel V in slice i+1, i+1,j obtains several cost values. The smallest cost value is found for any voxel V in the cost-pointer array. i+1,j where V i,k is voxel V i+1,j has the smallest cost for

[0043] The following equation (2) is for voxel V i+1,j Describe the cost and pointers:

number

[0044] This step is a forward step. After computing the entire cost-pointer array, we proceed backwards from the last slice 508 of the cost-pointer array to find the optimal path in the following manner:

[0045] In the last slice 508 of the cost-pointer array, find the element with the lowest cost value. Then get the corresponding pointer. This pointer is P l Assume that P l are actually the physical coordinates of the voxel in the penultimate slice.

[0046] In the penultimate slice, position P l Find the element of and set the corresponding pointer to P l-1 We obtain it as P l-1 are the physical coordinates of the voxel in the third-to-last slice.

[0047] For each slice, we use the coordinate list l ,P l-1 ,P l-2 ,…,P l-(N-1)} where N is the total number of slices in this cost-pointer array. This coordinate list describes the optimal path.

[0048] While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered illustrative or exemplary and not restrictive, i.e., the invention is not limited to the disclosed embodiments.

[0049] Other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims.

[0050] In the claims, the word "comprising" does not exclude other elements or steps and the singular does not exclude a plurality.

[0051] A single processor, device or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.

[0052] Processes such as collecting, determining, obtaining, outputting, providing, saving or storing, calculating, simulating, receiving, alerting, and stopping can be implemented as program code means of a computer program and / or as dedicated hardware.

[0053] The computer program may be stored and / or distributed on a suitable medium, such as an optical storage medium or a solid-state medium provided together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless communication systems.

Claims

1. 1. A method for generating an optimal spinal canal pathway, comprising: receiving scan data as a three-dimensional array of scanned spine images; performing a 3D voxel-wise spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine image; generating an inverse density 3D array corresponding to the generated binary 3D array and having the same dimensions as the generated binary 3D array; downsampling the inverse density 3D array to a predetermined dimension; performing a programming-based optimal spinal path search to generate an optimal spinal path; sampling the inverse density 3D array at higher resolution and limited dimensions around the generated optimal spinal canal path; performing a programming-based optimal spinal path search to generate a revised optimal spinal path; repeating the sampling and the programming-based optimal spinal canal path search by incrementally increasing the resolution and decreasing the dimensions; determining whether the accuracy of the optimal spinal canal path meets a predetermined threshold; generating a final optimal spinal canal path as a spinal canal centerline, wherein reformatted images are generated according to the final optimal spinal canal path as the spinal canal centerline.

2. 2. The method of claim 1, wherein the spinal canal segmentation is performed using machine learning or deep learning techniques, and a value of 1 is assigned to each spinal canal voxel and a value of 0 is assigned to the background in the generated binary 3D array.

3. 3. The method of claim 2, wherein the step of generating the inverse density three-dimensional array includes the step of assigning a floating point value to each voxel, the higher the density value of a voxel in the binary three-dimensional array, the smaller the floating point value assigned to the corresponding voxel in the inverse density three-dimensional array.

4. 2. The method of generating an optimal spinal canal path of claim 1, wherein the programming-based optimal spinal canal path search comprises creating a cost-pointer array, which is a three-dimensional array corresponding to the inverse density three-dimensional array, each element in the cost-pointer array including a cost component and a pointer component, each cost component in the cost-pointer array corresponding to a voxel at the same location in the inverse density three-dimensional array, and the pointer component being a three-dimensional vector that points to physical coordinates in the binary three-dimensional array.

5. The method of claim 1 , wherein the programming-based optimal spinal path search is a dynamic programming-based optimal spinal path search.

6. The method of claim 1 , wherein density estimation is applied to generate the inverse density three-dimensional array.

7. 7. The method of claim 6, wherein the density estimation is performed via a kernel density estimation technique, the kernel being at least one of Gaussian, linear, cosine, uniform, Epanechnikov, exponential, and top-hat.

8. a memory storing computer executable instructions; at least one processor for executing the computer-executable instructions; The at least one processor executes the computer-executable instructions to cause the optimal route search device to: receiving the scan data as a three-dimensional array of scanned spine images; performing a 3D voxel-wise spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine image; generating an inverse density 3-dimensional array corresponding to the generated binary 3-dimensional array and having the same dimensions as the generated binary 3-dimensional array; downsampling the inverse density 3D array to a predetermined dimension; performing a programming-based optimal spinal path search to generate an optimal spinal path; sampling the inverse density 3D array at higher resolution and limited dimensions around the generated optimal spinal canal path; performing a programming-based optimal spinal path search to generate a revised optimal spinal path; repeating the sampling and the programming-based optimal spinal canal path search by incrementally increasing the resolution and decreasing the dimensions; determining whether the accuracy of the optimal spinal canal path meets a predetermined threshold; generating a final optimal spinal canal path as a spinal canal centerline, wherein a reformatted image is generated according to the final optimal spinal canal path as the spinal canal centerline; Optimal route search device.

9. 9. The optimal path search device of claim 8, wherein the spinal canal segmentation is performed using machine learning or deep learning techniques, and a value of 1 is assigned to each spinal canal voxel and a value of 0 is assigned to the background in the generated binary 3D array.

10. 10. The optimum path search device of claim 9, wherein the processor assigns a floating point value to each voxel in the generated inverse density three-dimensional array, and the higher the density value of a voxel in the binary three-dimensional array, the smaller the floating point value assigned to the corresponding voxel in the inverse density three-dimensional array.

11. 9. The optimum path search device of claim 8, wherein the processor further creates a cost-pointer array that is a three-dimensional array corresponding to the inverse density three-dimensional array, each element in the cost-pointer array including a cost component and a pointer component, each cost component in the cost-pointer array corresponding to a voxel at the same position in the inverse density three-dimensional array, and the pointer component is a three-dimensional vector that points to physical coordinates in the binary three-dimensional array.

12. The optimal path search apparatus of claim 8 , wherein the processor performs the programming-based optimal spinal canal path search via a dynamic programming technique.

13. The optimum path planning apparatus of claim 8 , wherein the processor applies density estimation to generate the inverse density three-dimensional array.

14. 14. The optimum path planning apparatus of claim 13, wherein the density estimation is performed via a kernel density estimation technique, the kernel being at least one of Gaussian, linear, cosine, uniform, Epanechnikov, exponential and top-hat.

15. A non-transitory computer readable medium having stored thereon instructions for causing a processing circuit to perform a process, the process comprising: receiving scan data as a three-dimensional array of scanned spine images; performing a 3D voxel-wise spinal canal segmentation from the received scan data to generate a binary 3D array corresponding to the scanned spine image; generating an inverse density 3D array corresponding to the generated binary 3D array and having the same dimensions as the generated binary 3D array; downsampling the inverse density 3D array to a predetermined dimension; performing a programming-based optimal spinal path search to generate an optimal spinal path; sampling the inverse density 3D array at higher resolution and limited dimensions around the generated optimal spinal canal path; performing a programming-based optimal spinal path search to generate a revised optimal spinal path; repeating the sampling and the programming-based optimal spinal canal path search by incrementally increasing the resolution and decreasing the dimensions; determining whether the accuracy of the optimal spinal canal path meets a predetermined threshold; generating a final optimal spinal canal path as a spinal canal centerline, and a reformatted image is generated according to the final optimal spinal canal path as a spinal canal centerline. Non-transitory computer-readable medium.