Automated inspection system
US-2024420305-A1 · Dec 19, 2024 · US
US9953396B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9953396-B1 |
| Application number | US-201715715367-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 26, 2017 |
| Priority date | Sep 28, 2016 |
| Publication date | Apr 24, 2018 |
| Grant date | Apr 24, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present invention relates to the technical field of visualization in scientific computing, and specifically discloses a ray casting visualization multi-user interaction processing method based on Hadoop and CUDA. On one hand, the method of the present invention employs the parallel processing capability of Hadoop, MapReduce, and NVIDIA CUDA for accelerated rendering, and, on the other hand, the present invention designs a method to avoid duplicate computation for a multi-user interaction environment, thereby reducing the time consumption of duplicate computation. The method of the present invention realizes the fast operation of each pixel gradient, ray resampling and data synthesis and can accomplish the 3D visualization imaging rapidly and efficiently.
Opening claim text (preview).
What is claimed is: 1. A ray casting visualization multi-user interaction processing method based on Hadoop and CUDA comprising: each user obtaining data to render an image prior to local processing, wherein the data to render the image includes a duplicate query identifier CX, number of slices C, start number D, end number E, line of sight direction F, viewpoint position G, generated image width W, generated image height H, duplicate type CTYPE, duplicate number of slices CC, duplicate start number CD, duplicate end number CE, and other data DATA; executing a process of avoid duplicates with a master machine by obtaining the data of the image, wherein the master machine compares the data of the image with data stored in the mater machine to avoid duplicate computations; wherein the master machine queries data results to be computed in the cluster; wherein the data stored for avoiding duplicate computations includes a start number X, end number Y, line of sight direction L, viewpoint position M, number of uses N, time, no replacement identifier NOREP, and other data DATA 0 ; determining whether there are duplicate data results in the cluster and when it is determined there are duplicate data results, a duplicate type CTYPE for the data is set to partial duplicate and the no replacement identifier NOREP is set to a first value, and when the duplicate data results are full duplicates, the duplicate type CTYPE for the data is set to full duplicate; wherein when the duplicate type CTYPE for the data is set to partial duplicate: reading the corresponding non-duplicate image slides and establishing a 3D data field; cropping the invalid voxels of the 3D data field using the AABB bounding box; processing the gradients in parallel; transferring the processed data to the master machine of the cluster, the processed data including a duplicate query identifier cx, number of slices c, start number d, end number e, line of sight direction f, viewpoint position g, generated image width w, generated image height h, duplicate type ctype, duplicate number of slices cc, duplicate start number cd, duplicate end number ce, and other data data; comparing the transferred data with the data stored in the master machine to avoid duplicate computations and querying the computation result of the received data in the cluster; determining whether duplicate data exists, in the cluster, wherein when duplicate data exists the corresponding stored duplicated data is read, the no replacement identifier NOREP is set to a second value; when it is determined duplicate data exists in the cluster, determining whether the duplicate data is a full duplicate; wherein when the duplicate data is a full duplicate, the full duplicate data are stored in the data DATA and the no replacement identifier NOREP is set to the second value; wherein when the duplicate data is a partial duplicate: non-duplicate data to be processed is uploaded, the master machine slices the data into multiple sub-data which are each sent to a slave machine for processing, each slave machine processing the ray synthesis and resampling tasks separately and storing the generated results, and downloading the generated result and reading the generated result to the master machine; determining if data integration exists, wherein when data integration exists, duplicate data is integrated with the generated result into a final result; wherein when data integration does not exist, replacing the duplicate data DATA 0 using least recently used data and generating the final result; transmitting the final result and displaying a 2D generated image from the final result; determining whether the line of sight has changed, wherein when the line of sight has changed, repeating the execution of the process of avoiding duplicates with the master machine. 2. The ray casting visualization multi-user interaction processing method based on Hadoop and CUDA according to claim 1 , wherein the determining of whether there are duplicate results in the cluster comprises: determining a first condition where the start number D is less than or equal to the start number X which is less than end number Y which is less than or equal to the end number E; determining a second condition where the line of sight direction F is equal to the line of sight direction L; determining a third condition where the viewpoint position G is equal to the line of sight viewpoint position M; wherein when the first, second, and third conditions are satisfied simultaneously, it is judged the data result is duplicate data, and otherwise it is judged the data result is not duplicate data; determining a fourth condition where the start number D is equal to the start number X; determining a fifth condition where the end number Y is equal to the end number E; determining a sixth condition where the line of sight direction F is equal to the line of sight direction L; determining a seventh condition where the viewpoint position G is equal to the viewpoint position M; wherein when the fourth, fifth, sixth, and seventh conditions are satisfied simultaneously, it is judged the data result is a full duplicate, and otherwise it is judged the data result is partially duplicate data. 3. The ray casting visualization multi-user interaction processing method based on Hadoop and CUDA according to claim 1 , wherein processing the gradients in parallel comprises: requesting graphics memory spaces cuinArray and cuoutArray, wherein the cuinArray graphics memory space stores the incoming data and the cuoutArray memory space stores the generated outgoing data; copying a cropped 3D data field to the graphics memory space cuinArray; binding the data in graphics memory space cuinArray to a 3D texture using texture memory; performing multi-threaded data processing in a kernel function; calculating each pixel gradient value greyxyz and storing the results in the graphics memory space cuoutArray; copying the data in the graphics meory space cuoutArray to host memory and removing the texture binding; releasing memory spaces cuinArray and cuoutArray. 4. The ray casting visualization multi-user interaction processing method based on Hadoop and CUDA according to claim 1 , wherein the determining whether duplicate data exists in the cluster comprises: determining a first condition where the start number d is less than or equal to start number x which is less than end numbery which is less than or equal to the end number e; determining a second condition where the line of sight direction f is equal to the line of sight direction l; determining a third condition where the viewpoint position g is equal to the viewpoint position m; wherein when the first, second, and third conditions are satisfied simultaneously, it is judged the data result is duplicate data, and otherwise it is judged the data result is not duplicate data; determining a fourth condition where the start number d is equal to start number x; determining a fifth condition where the end numbery is equal to the end number e; determining a sixth condition where the line of sight direction f is equal to the line of sight direction l; determining a seventh condition where the viewpoint position g is equal to the viewpoint position m; wherein when the fourth, fifth, sixth, and seventh conditions are satisfied simultaneously, it is judged the data result is a full duplicate, and otherwise it is judged the data result is partially duplicate data. 5. The ray casting visualization multi-user interaction processing method based on Hadoop and CUDA according to claim 1 , wherein the determining if data integration exists comprises: determining a first condition where the start number d is less than or equal to start number x which is less than end numbery which is
Related publications grouped by family.
Answers are generated from the same data shown on this page.