Surgical planning system
Through the input module, display module and control system of the surgical planning system, a three-dimensional data model is generated and the measurement results are calculated, which solves the problem of large parameter measurement errors in the existing technology, and realizes intuitive viewing and accurate measurement of the spatial relationship between lesions and other tissues.
Patent Information
- Application Number
- CN202411371809.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-07-08
AI Technical Summary
In the prior art, when lesion positioning and ranging are performed based on two-dimensional images of computed tomography, the parameter measurement error is large and the spatial relationship between the lesion and other tissues cannot be visually viewed.
It provides a surgical planning system, including an input module, a display module and a control system, generates a model by receiving three-dimensional image data, calculates measurement results based on the positioning point selected by the user, supports distance and angle measurement modes, uses ray equations to determine the coordinates of the positioning point, and generates sliding bars to display measurement results.
It realizes the accuracy of parameter measurement and intuitive view of the spatial relationship between lesions and other tissues, improving the accuracy of medical diagnosis and treatment and personalized medical services.
Smart Images

Figure CN120267315A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of medical technology, and particularly relates to a surgical planning system. Background Art
[0002] Currently, internal medical diseases show a trend of having multiple underlying diseases and a high incidence of malignant tumors. For patients in need of treatment, accurate localization and ranging of lesions play an indispensable role in medical diagnosis, treatment, and prognosis assessment. Precise localization and measurement help achieve precise treatment and reduce damage to normal tissues. However, the existing technology mainly flips through two-dimensional images based on computed tomography scans, then selects corresponding positioning points and calculates the spatial distance between the lesion and other points. However, the error in parameter measurement during the above measurement process is relatively large, and the spatial relationship between the lesion and other tissues cannot be visually observed. Summary of the Invention
[0003] To solve the above technical problems, the embodiments of this application provide a surgical planning system that can make parameter measurement more accurate and enable users to more intuitively view the spatial relationship between the lesion and other tissues.
[0004] In a first aspect, the embodiments of this application provide a surgical planning system, including:
[0005] An input module, a display module, and a control system; the control system is communicatively connected to the input module and the display module, and the control system further includes a processing module, and the processing module is configured to:
[0006] Receive three-dimensional image data of a target object input by the input module;
[0007] Generate a three-dimensional data model for display by the display module;
[0008] Obtain the measurement mode selected by the user, calculate the measurement result according to the coordinates of the positioning points selected by the user on the three-dimensional data model, and display the measurement result on the display module.
[0009] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the processing module is further configured to:
[0010] Obtain the measurement mode selected by the user, and the measurement mode includes a distance measurement mode or an angle measurement mode.
[0011] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the processing module is further configured to:
[0012] Obtain the number of positioning points selected by the user;
[0013] Determine a measurement mode based on the number of the positioning points. Wherein, when the number of the positioning points is two, determine the measurement mode as a distance measurement mode; when the number of the positioning points is three, determine the measurement mode as an angle measurement mode.
[0014] In some embodiments, the processing module calculates a measurement result according to the positioning points selected by the user on the three-dimensional data model, and displays the measurement result on the display module, including:
[0015] When the measurement mode is a distance measurement mode, determine the distance between the two positioning points according to the coordinates of the two positioning points selected by the user on the three-dimensional data model, and display the distance on the display module, and display the connection line between the two positioning points and the coordinates of the two positioning points.
[0016] In some embodiments, the processing module calculates a measurement result according to the positioning points selected by the user on the three-dimensional data model, and displays the measurement result on the display module, including:
[0017] When the measurement mode is an angle measurement mode, determine the angle formed by the three positioning points according to the three positioning points selected by the user on the three-dimensional data model, and display the coordinates of the three positioning points and the angle formed by the three positioning points on the display module.
[0018] In some embodiments, determining the angle formed by the three positioning points according to the three positioning points selected by the user on the three-dimensional data model includes: taking the middle point among the three positioning points as the vertex of the formed angle, connecting the vertex with the other two positioning points except the vertex to form the angle, and calculating the angle value.
[0019] In some embodiments, before the processing module calculates a measurement result according to the positioning points selected by the user on the three-dimensional data model, it is further configured to:
[0020] Obtain a selection operation of the user for a screen point on the display screen, and generate a ray based on the screen point and a preset direction;
[0021] Determine the starting point coordinates of the ray on the near plane of the three-dimensional data model and the ending point coordinates of the ray on the far plane;
[0022] Based on the starting point coordinates, the ending point coordinates and the mask of the target object, determine the coordinates of the positioning points of the ray on the target object.
[0023] In some embodiments, determining the starting point coordinates of the ray on the near plane of the three-dimensional data model and the ending point coordinates of the ray on the far plane includes:
[0024] Determine the ray equation of the ray, where the ray equation includes: the distance of moving along the direction vector from the ray starting point;
[0025] Calculate the minimum value of the distance from the ray starting point moving along the direction vector to the near plane based on the ray equation;
[0026] Calculate the maximum value of the distance from the ray starting point moving along the direction vector to the far plane based on the ray equation;
[0027] Calculate the starting point coordinates of the ray on the near plane based on the minimum value, and calculate the ending point coordinates of the ray on the far plane based on the maximum value.
[0028] In some embodiments, the calculating the starting point coordinates of the ray on the near plane based on the minimum value and calculating the ending point coordinates of the ray on the far plane based on the maximum value includes:
[0029] Normalize the coordinates of the screen point to device coordinates;
[0030] Convert the device coordinates to camera space coordinates according to the projection matrix;
[0031] Convert the camera space coordinates to volume data coordinates, and determine the direction vector in the volume data coordinate system based on a preset direction;
[0032] Calculate the starting point coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates;
[0033] Calculate the ending point coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates.
[0034] In some embodiments, the calculating the starting point coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates and calculating the ending point coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates includes:
[0035] Multiply the minimum value by the direction vector to obtain a first product;
[0036] Add the first product to the volume data coordinates to obtain the starting point coordinates of the ray on the near plane;
[0037] Multiply the maximum value by the direction vector to obtain a second product, and add the second product to the volume data coordinates to obtain the ending point coordinates of the ray on the far plane.
[0038] In some embodiments, determining the coordinates of the positioning point of the ray on the target object based on the starting point coordinates, the ending point coordinates, and the mask of the target object includes:
[0039] Determining the coordinates of the initial positioning point of the ray between the starting point coordinates and the ending point coordinates;
[0040] Determining the position index of each initial positioning point based on the coordinates of each initial positioning point;
[0041] Determining whether the value of the position index of each initial positioning point is the set value of the target object;
[0042] Determining the initial positioning point whose position index value is the set value of the target object as the positioning point of the ray on the target object, and determining the coordinates of the positioning point.
[0043] In some embodiments, the processing module is configured to generate a slider based on the positioning point, and the display module is further configured to output the slider.
[0044] In some embodiments, the display module is further configured to:
[0045] When a selection operation of any target positioning point on the slider is obtained, outputting the coordinates of the target point.
[0046] In a second aspect, an embodiment of the present application provides a surgical planning method, including:
[0047] Obtaining three-dimensional image data of a target object;
[0048] Generating a three-dimensional data model based on the three-dimensional image data, and displaying the three-dimensional data model;
[0049] Calculating a measurement result according to the positioning point selected by the user on the three-dimensional data model, and displaying the measurement result on the display module.
[0050] In a third aspect, an embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the method according to any one of the above when executing the computer program.
[0051] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and the computer program implements the method according to any one of the above when executed by a processor.
[0052] Fifth aspect, an embodiment of the present application provides a computer program product, which, when running on a terminal device, causes an electronic device to execute the method described in any one of the above.
[0053] An operation planning system provided by an embodiment of the present application includes an input module, a display module, and a control system; the control system is communicatively connected to the input module and the display module, and the control system further includes a processing module, and the processing module is configured to: receive three-dimensional image data of a target object input by the input module; generate a three-dimensional data model for display by the display module; calculate a measurement result according to the coordinates of a positioning point selected by a user on the three-dimensional data model, and display the measurement result on the display module, which can make parameter measurement more accurate and enable the user to more intuitively view the spatial relationship between the lesion and other tissues.
[0054] It can be understood that the beneficial effects of the above second aspect to fifth aspect can be referred to the relevant descriptions in the first aspect above, and will not be elaborated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0056] Figure 1 A structural schematic diagram of an operation planning system provided by an embodiment of the present application;
[0057] Figure 2 An implementation flow schematic diagram of an operation planning method provided by an embodiment of the present application;
[0058] Figure 3 An implementation flow schematic diagram of an operation planning method provided by an embodiment of the present application;
[0059] Figure 4 A flow schematic diagram of distance measurement provided by an embodiment of the present application;
[0060] Figure 5 A flow schematic diagram of angle measurement provided by an embodiment of the present application;
[0061] Figure 6 A structural schematic diagram of an electronic device provided by an embodiment of the present application.
[0062] In the drawings, the same components are denoted by the same reference numerals, and the drawings are not drawn to actual scale. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0063] In the following description, specific details such as specific system architectures and technologies are presented for purposes of illustration and not limitation in order to provide a thorough understanding of the embodiments of the present application. However, those skilled in the art should understand that the present application may be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary details.
[0064] It should be understood that when used in the specification and the appended claims of the present application, the term "comprising" indicates the presence of the described features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or their groups.
[0065] It should also be understood that the term "and / or" as used in the specification and the appended claims of the present application refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0066] As used in the specification and the appended claims of the present application, the term "if" may be construed, depending on the context, as "when", "once", "in response to determining", or "in response to detecting". Similarly, the phrases "if determined" or "if detected" may be construed, depending on the context, to mean "once determined", "in response to determining", "once detected", or "in response to detecting".
[0067] In addition, in the description of the specification and the appended claims of the present application, the terms "first", "second", "third", etc. are used only for descriptive distinction and should not be construed as indicating or implying relative importance.
[0068] Reference to "one embodiment" or "some embodiments" or the like described in the specification of the present application means that a specific feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application. Thus, statements such as "in one embodiment", "in some embodiments", "in other some embodiments", "in still other embodiments", etc. that appear in different places in this specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in another way.
[0069] Based on the problems in the related art, an embodiment of the present application provides a surgical planning system. Each module included in the system, as well as each unit included in each module, can be implemented by a processor in a computer device; of course, it can also be implemented by specific logic circuits; during the implementation process, the processor can be a central processing unit (CPU, Central Processing Unit), a microprocessor (MPU, Microprocessor Unit), a digital signal processor (DSP, Digital Signal Processing), or a field programmable gate array (FPGA, Field Programmable Gate Array), etc.
[0070] Figure 1 FIG. is a schematic structural diagram of a surgical planning system provided by an embodiment of the present application. As Figure 1 shown, it includes: an input module, a display module, and a control system; the control system is communicatively connected to the input module and the display module, and the control system further includes a processing module, and the processing module is configured to: receive three-dimensional image data of a target object input by the input module; generate a three-dimensional data model for display by the display module; calculate a measurement result according to the coordinates of the positioning points selected by the user on the three-dimensional data model, and display the measurement result on the display module.
[0071] In an embodiment of the present application, the target object can be a patient. In some embodiments, the target object can also be a lesion or tissue of a patient. The three-dimensional data model of the target object can include: three-dimensional data models of multiple tissues, or can only include a three-dimensional data model of one tissue. Tissues can include: tumors or organs. The three-dimensional data model is a digital representation of the continuous form of the target object in three-dimensional space, and the three-dimensional data model can be constructed by the acquired three-dimensional image data (such as data of CT (Computed Tomography) scans, data of MRI (Magnetic Resonance Imaging)). When constructing the three-dimensional data model from the three-dimensional image data, processes such as interpolation, surface reconstruction, and volume rendering are usually required.
[0072] In an embodiment of the present application, the display module can display the three-dimensional model data through a display screen. The display screen can be a touch screen, and the three-dimensional data model is output through the display screen.
[0073] In an embodiment of the present application, a dedicated visualization library or software (such as VTK, Three.js, Mayavi, ParaView, etc.) can be used to construct and render the three-dimensional scene, and then the three-dimensional data model is displayed on the display screen.
[0074] In the embodiments of the present application, an interaction function can be implemented through a display screen. The user can operate on the display screen to rotate, zoom, pan, etc. a three-dimensional data model, so as to better observe the details of the three-dimensional data model.
[0075] In the embodiments of the present application, the user can select positioning points through the display screen, and the number of positioning points can be 2 or 3. The measurement mode can include: an angle measurement mode or a distance measurement mode.
[0076] In the embodiments of the present application, the processing module calculates a measurement result according to the coordinates of the positioning points selected by the user on the three-dimensional data model, and displays the measurement result on the display module.
[0077] In the embodiments of the present application, the measurement result can include: distance or angle. The coordinates of the positioning points can be volume data coordinates. The positioning points can be points on the same tissue or points on different tissues.
[0078] A surgical planning system provided by the embodiments of the present application includes an input module, a display module, and a control system; the control system is communicatively connected to the input module and the display module, and the control system further includes a processing module, and the processing module is configured to: receive three-dimensional image data of a target object input by the input module; generate a three-dimensional data model for display by the display module; calculate a measurement result according to the coordinates of the positioning points selected by the user on the three-dimensional data model, and display the measurement result on the display module, which can make parameter measurement more accurate and enable the user to more intuitively view the spatial relationship between the lesion and other tissues.
[0079] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the processing module is further configured to:
[0080] Obtain the measurement mode selected by the user, and the measurement mode includes a distance measurement mode or an angle measurement mode.
[0081] In the embodiments of the present application, a button can be added to the user interface, and the button is used to select a distance measurement mode or an angle measurement mode. When the user clicks the button, the processing module obtains a trigger operation of the selected measurement mode. In the case where the processing module obtains a trigger operation of the selected measurement mode, the corresponding measurement mode is entered. The button can include: a button for the distance measurement mode and a button for the angle measurement mode. If the user clicks the button for the distance measurement mode, the user selects the distance measurement mode, and the distance between the positioning points will be calculated. If the user clicks the button for the angle measurement mode, the user selects the angle measurement mode, and the angle formed by the three positioning points will be calculated.
[0082] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the processing module is configured to:
[0083] Obtain the number of positioning points selected by the user;
[0084] Determine the measurement mode based on the number of positioning points. Specifically, when the number of positioning points is two, the measurement mode is determined as the distance measurement mode; when the number of positioning points is three, the measurement mode is determined as the angle measurement mode.
[0085] In the embodiments of the present application, the user can select positioning points through the display screen, so that the processing module determines the number of positioning points.
[0086] In the surgical planning system provided by the embodiments of the present application, the user does not need to manually select the measurement mode. The system can automatically judge and select a suitable mode according to the number of positioning points, thus saving time. Through automatic selection, the errors that may occur when the user selects the mode are reduced, thereby improving the accuracy of the measurement result. The operation process is simplified, and the usability is improved. The user can focus on other operations without considering the selection of the measurement mode.
[0087] In some embodiments, when the measurement mode is the distance measurement mode, the distance between the two positioning points selected by the user on the three-dimensional data model is determined according to the coordinates of the two positioning points, and the distance is displayed on the display module, and the connection line between the two positioning points and the coordinates of the two positioning points are also displayed.
[0088] In the embodiments of the present application, each positioning point can be located to determine the coordinates of the two positioning points.
[0089] In some embodiments, two sliders can be determined. Two positioning points can be selected through the two sliders. The coordinates of the positioning points on the sliders can be located. The tissue organs corresponding to the two sliders can be the same tissue. In some embodiments, the tissue organs corresponding to the two sliders can also be different tissues.
[0090] In the embodiments of the present application, one positioning point can be selected from the slider, and one positioning point can be determined through other positioning methods, and then the distance between the two positioning points is calculated.
[0091] In the embodiments of the present application, after the positioning points are selected, the distance between the two positioning points can be calculated. When calculating the distance, the Euclidean distance calculation formula can be used for calculation.
[0092] In some embodiments, the display module is further configured to display the connection line between the two positioning points and the coordinates of the two positioning points.
[0093] The surgical planning system provided by the embodiments of the present application can calculate the spatial position relationship between the target object and other tissues, perform linear measurement according to the selected positioning points, so that parameter measurement can be more accurate, thereby providing parameter information for medical diagnosis, treatment and prognosis evaluation, improving the accuracy of diagnosis and the effectiveness of treatment. By displaying the connection line between two positioning points, the coordinates of the two positioning points, and the displayed distance, users can intuitively view the spatial relationship between the lesion and other tissues, provide more personalized and precise medical services for patients, and improve the user experience of doctors.
[0094] In some embodiments, when the measurement mode is the angle measurement mode, the angles formed by three positioning points selected by the user on the three-dimensional data model are determined, and the coordinates of the three positioning points and the angles formed by the three positioning points are displayed on the display module.
[0095] In the embodiments of the present application, the middle point among the three positioning points can be used as the vertex of the formed angle, the vertex is connected to the other two positioning points except the vertex to form an angle, and the angle value is calculated. The three positioning points can be points on the same target tissue or not on the same target tissue. In the embodiments of the present application, the two line segments can be represented by vectors, and the dot product formula of vectors can be used to calculate the angle between the two line segments. After calculating the angle, the angle can be output.
[0096] The surgical planning system provided by the embodiments of the present application performs angle measurement according to the positioning points, so that parameter measurement can be more accurate.
[0097] In some embodiments, the display module is further configured to display the coordinates of the three positioning points and display two line segments.
[0098] In the embodiments of the present application, by displaying the connection line between the 3 positioning points, the coordinates of the 3 positioning points, and the displayed angle, users can intuitively view the spatial relationship between the lesion and other tissues, provide more personalized and precise medical services for patients, and improve the user experience of doctors.
[0099] Based on the foregoing embodiments, the coordinates of the positioning points in the above embodiments can be obtained by the following method.
[0100] In some embodiments, before the processing module calculates the measurement result according to the positioning points selected by the user on the three-dimensional data model, it is further configured to:
[0101] Obtain the selection operation of the user for the screen points on the display screen, generate a ray based on the screen points and a preset direction; determine the starting point coordinates of the ray on the near plane of the three-dimensional data model and the ending point coordinates of the far plane; based on the starting point coordinates, the ending point coordinates and the mask of the target object, determine the coordinates of the positioning points of the ray on the target object.
[0102] In the embodiments of the present application, it is possible to monitor the click events of the user on the screen, so as to obtain the selection operation of the user for the screen points on the display screen. After selecting a screen point, the coordinates of the screen point can be determined.
[0103] In the embodiments of the present application, the ray is a straight line starting from the screen point and extending along a preset direction. The preset direction can be a fixed direction, such as the direction perpendicular to the screen. In some embodiments, the preset direction can also be adjusted according to the user's needs, and the preset direction can be the z-axis direction.
[0104] In the embodiments of the present application, the near plane is a plane that defines the view volume, and this plane is located at the proximal end. The far plane is another plane that defines the view volume and is located at the distal end. When constructing a three-dimensional data model using scan data, a three-dimensional data model can be generated by stacking N pieces of scan image data. Here, the near plane can be the plane corresponding to the first piece of scan image data, and the far plane can be the plane corresponding to the Nth scan image.
[0105] In the embodiments of the present application, both the starting point coordinates and the ending point coordinates are volume data coordinates. Volume data coordinates generally refer to the coordinates representing the positions of objects or data points in a three-dimensional space. Volume data coordinates can be used in computer graphics, medical imaging (such as CT or MRI scans), scientific visualization, etc.
[0106] In volume data, the coordinates usually consist of three values, and the three values respectively represent the positions on the X, Y, and Z axes. For example, the volume data coordinates of a positioning point can be expressed as (x, y, z), where: the X coordinate represents the position of the positioning point in the horizontal direction. The Y coordinate represents the position of the positioning point in the vertical direction. The Z coordinate represents the position of the positioning point in the depth direction.
[0107] In the embodiments of the present application, the intersection points of the ray with the near plane and the far plane correspond to the starting point and the ending point respectively. The coordinates corresponding to the starting point are the starting point coordinates, and the coordinates corresponding to the ending point are the ending point coordinates.
[0108] In the embodiments of the present application, the starting point coordinates and the ending point coordinates can be calculated through the ray and the near plane and the far plane.
[0109] In the embodiments of the present application, among the points between the starting point and the ending point in the ray, some points may be positioning points. Some positioning points may be outside the three-dimensional data model of the target object, and some positioning points are on the three-dimensional data model. Therefore, the positioning points on the target object can be screened out from the positioning points between the starting point and the ending point through the mask of the target object.
[0110] In the embodiments of the present application, the positioning points on the target object are points on the three-dimensional data model. The positioning points on the three-dimensional data model may include: positioning points on the surface of the three-dimensional data model and / or within the three-dimensional data model.
[0111] In the embodiments of the present application, the mask may be a binary mask, in which the value of each pixel or voxel is 0 or 1, indicating whether the position is selected or valid. The mask of the target object may be a two-dimensional data with the same size as the three-dimensional data model, where each element represents the validity of the corresponding point on the three-dimensional data model.
[0112] In the embodiments of the present application, a ray collision detection algorithm with the three-dimensional data model (a grid interaction or voxelization calculation method can be used) is used to determine the exact position where the ray passes through the model. According to the mask of the target object, the intersection points of the ray and the target object are calculated. Thereby, the positioning points on the target object are determined.
[0113] A surgical planning system provided by the embodiments of the present application can generate a ray based on a screen point and a preset direction by obtaining a user's selection operation on the screen point on the display screen; determine the starting point coordinates of the ray on the near plane and the ending point coordinates of the ray on the far plane of the three-dimensional data model; and determine the coordinates of the positioning points of the ray on the target object based on the starting point coordinates, the ending point coordinates, and the mask of the target object, which can position the point inside the lesion and improve the accuracy of positioning point positioning.
[0114] In some embodiments, determining the starting point coordinates of the ray on the near plane and the ending point coordinates of the ray on the far plane of the three-dimensional data model includes: determining the ray equation, where the ray equation includes: the distance of moving along the direction vector from the ray starting point; calculating the minimum value of the distance of moving along the direction vector from the ray starting point to the near plane based on the ray equation; calculating the maximum value of the distance of moving along the direction vector from the ray starting point to the far plane based on the ray equation; calculating the starting point coordinates of the ray on the near plane based on the minimum value, and calculating the ending point coordinates of the ray on the far plane based on the maximum value.
[0115] In the embodiments of the present application, the ray equation can be expressed as: R(t)=P + t*D, where P is the coordinate of the screen point, i.e., the ray starting point, D is the normalized direction vector, and t is the distance of moving along the direction vector from the ray starting point. Different points on the ray can be obtained by changing t.
[0116] In the embodiments of the present application, t can be calculated through the ray equation, and t=(P1 - P) / D can be used to calculate the distance of moving along the direction vector from the ray starting point to the near plane, where P1 is the coordinate of the near plane and P is the coordinate of the ray starting point.
[0117] In the embodiments of the present application, this relationship can be used to calculate the t values in the x, y, and z directions of the near plane respectively.
[0118] In the embodiments of the present application, by substituting the points on the near plane into the above equation, different t values can be calculated. After calculating different t values, the minimum value of t can be found, so as to obtain the minimum distance from the ray starting point moving along the direction vector to the near plane.
[0119] In the embodiments of the present application, similarly, by substituting the points on the far plane into the equation, different t values can be calculated. After calculating different t values, the maximum value of t can be found, so as to obtain the maximum distance from the ray starting point moving along the direction vector to the far plane.
[0120] In the embodiments of the present application, the minimum value can be substituted into the ray equation to calculate the starting point coordinates of the ray on the near plane, and the maximum value can be substituted into the ray equation to calculate the ending point coordinates of the ray on the far plane.
[0121] In some embodiments, calculating the starting point coordinates of the ray on the near plane based on the minimum value and calculating the ending point coordinates of the ray on the far plane based on the maximum value includes:
[0122] Normalize the coordinates of the screen point to device coordinates.
[0123] In the embodiments of the present application, the screen points clicked by the user on the display screen are usually two-dimensional coordinates. The screen coordinates can be converted to device coordinates, which usually involves converting the coordinate range from screen pixels to the range of [-1, 1].
[0124] Convert the device coordinates to camera space coordinates according to the projection matrix.
[0125] In the embodiments of the present application, the projection matrix is a matrix used to convert three-dimensional world coordinates to two-dimensional screen coordinates. It usually includes information such as the field of view, aspect ratio, near plane, and far plane. Through this projection matrix, the device coordinates can be converted to camera space coordinates.
[0126] Convert the camera space coordinates to volume data coordinates, and determine the direction vector in the volume data coordinate system based on a preset direction.
[0127] In the embodiments of the present application, a conversion matrix can be used to convert the camera space coordinates to volume data coordinates.
[0128] In the embodiments of the present application, based on a preset direction (for example, the line-of-sight direction or a direction specified by the user), it can be represented as a unit vector D. The preset direction can be normalized to obtain the direction vector.
[0129] Calculate the starting point coordinates of the ray on the near plane based on the minimum value, direction vector, and volume data coordinates.
[0130] In the embodiments of the present application, multiply the minimum value by the direction vector to obtain a first product; add the first product to the volume data coordinates to obtain the starting point coordinates of the ray on the near plane. It can be expressed by the formula: P Start = P + t Near * D, where t Near is the minimum value, and P is the volume data coordinates corresponding to the screen point.
[0131] Calculate the ending point coordinates of the ray on the far plane based on the maximum value, direction vector, and volume data coordinates.
[0132] In the embodiments of the present application, multiply the maximum value by the direction vector to obtain a second product, and add the second product to the volume data coordinates to obtain the ending point coordinates of the ray on the far plane. It can be expressed by the formula: P End = P + t Far * D, t Far is the maximum value, and P End is the ending point coordinates.
[0133] In some embodiments, based on the starting point coordinates, ending point coordinates, and mask of the target object, determine the coordinates of the positioning point of the ray on the target object, including:
[0134] Determine the coordinates of the initial positioning points between the starting point coordinates and the ending point coordinates of the ray, determine the position index of each initial positioning point based on the coordinates of each initial positioning point, determine whether the value of the position index of each initial positioning point is the set value of the target object, and determine the initial positioning points with the value of the position index of the target object as the set value as the positioning points of the ray on the target object, and determine the coordinates of the positioning points.
[0135] In the embodiments of the present application, between the starting point and the ending point of the ray, multiple points can be evenly distributed on the path of the ray to be determined as the initial positioning points. These points can be calculated by linear interpolation. Assuming that n points are evenly distributed between the starting point coordinates and the ending point coordinates, the following formula can be used to calculate the coordinates of each initial positioning point Pi: where R far is the ending point coordinates, R near is the starting point coordinates, and i is the index from 0 to n.
[0136] In the embodiments of the present application, the position index is usually a data structure (such as an array or a list) used to store the position of each initial positioning point in the target object. The position index can be determined by mapping the coordinates of each initial positioning point to the spatial coordinate system of the target object.
[0137] In the embodiments of the present application, for each initial positioning point, assume it is Ptmp =(x, y, z), the position index can be calculated by the following formula:
[0138] Index = x + y * Dim1 + z * Dim1 * Dim2;
[0139] Where Dim1 and Dim2 are the values in the XY direction on the corresponding plane.
[0140] In the embodiments of the present application, the set value is used to represent the existence of the target object. For each initial positioning point Pi, check whether its corresponding index value is equal to the set value of the target object.
[0141] In the embodiments of the present application, the positioning points on the target object can be the positioning points of the lesion, and the coordinates of each positioning point can be obtained through this method.
[0142] In some embodiments, the processing module is used to generate a slider based on the positioning points, and the display module is also used to output the slider.
[0143] In the embodiments of the present application, HTML and JavaScript can be used to create a simple slider interface. The slider can be displayed through the display module. After creating the slider interface, the slider supports the user to slide to select points, and also supports the user to click on the points on the slider. After the user selects a point, it supports displaying the coordinates corresponding to the positioning point.
[0144] In some embodiments, the display module is also used for:
[0145] When obtaining the selection operation of any target positioning point on the slider, output the coordinates of the target point.
[0146] In the embodiments of the present application, the target positioning point is the positioning point selected by the user.
[0147] The method provided by the embodiments of the present application can realize displaying the positioning points and coordinates in a three-dimensional window. By displaying the positioning points and coordinates in a three-dimensional window, the user can view the positioning points, thereby facilitating the positioning of the lesion on the three-dimensional data model and enabling precise positioning by the doctor.
[0148] It should be noted that for the information interaction, execution process, etc. between the above-mentioned devices / units, since they are based on the same concept as the method embodiments of the present application, their specific functions and the technical effects brought, please refer to the method embodiment part for details, and will not be elaborated here.
[0149] In addition, the surgical planning system can be a software unit, a hardware unit, or a unit combining software and hardware. It can also be integrated into an electronic device as an independent pendant, or exist as an independent terminal device.
[0150] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example. In actual applications, the above-mentioned functions can be allocated to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. Each functional unit and module in the embodiment can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional unit. In addition, the specific names of the functional units and modules are only for the convenience of mutual distinction and do not limit the protection scope of the present application.
[0151] Based on the technical problems of the related art, the embodiment of the present application provides a surgical planning method that can be applied to electronic devices such as mobile phones, tablet computers, wearable devices, vehicle-mounted devices, augmented reality (AR) / virtual reality (VR) devices, notebook computers, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). The embodiment of the present application does not impose any restrictions on the specific types of electronic devices.
[0152] Based on the foregoing embodiments, the embodiment of the present application further provides a surgical planning method. Figure 2 It is a schematic flowchart of the implementation of a surgical planning method provided by the embodiment of the present application. As Figure 2 shown, it includes:
[0153] Step S101, obtaining three-dimensional image data of a target object;
[0154] Step S102, generating a three-dimensional data model based on the three-dimensional image data and displaying the three-dimensional data model;
[0155] Step S103, calculating a measurement result according to the positioning points selected by the user on the three-dimensional data model and displaying the measurement result on the display module.
[0156] The method provided by the embodiment of the present application can make parameter measurement more accurate and enable the user to more intuitively view the spatial relationship between the lesion and other tissues by obtaining three-dimensional image data of the target object; generating a three-dimensional data model based on the three-dimensional image data and displaying the three-dimensional data model; calculating the measurement result according to the coordinates of the positioning points selected by the user on the three-dimensional data model and displaying the measurement result on the display module.
[0157] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the method further includes: obtaining the measurement mode selected by the user, where the measurement mode includes a distance measurement mode or an angle measurement mode.
[0158] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the method further includes:
[0159] Obtaining the number of positioning points selected by the user;
[0160] Determining the measurement mode based on the number of positioning points, where, when the number of positioning points is two, the measurement mode is determined to be the distance measurement mode, and when the number of positioning points is three, the measurement mode is determined to be the angle measurement mode.
[0161] In some embodiments, calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model and displaying the measurement result on the display module includes:
[0162] When the measurement mode is the distance measurement mode, determining the distance between two positioning points according to the coordinates of the two positioning points selected by the user on the three-dimensional data model, and displaying the distance on the display module, as well as displaying the connection line between the two positioning points and the coordinates of the two positioning points.
[0163] In some embodiments, calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model and displaying the measurement result on the display module includes:
[0164] When the measurement mode is the angle measurement mode, determining the angle formed by three positioning points according to the three positioning points selected by the user on the three-dimensional data model, and displaying the coordinates of the three positioning points and the angle formed by the three positioning points on the display module.
[0165] In some embodiments, determining the angle formed by three positioning points according to the three positioning points selected by the user on the three-dimensional data model includes: using the middle point among the three positioning points as the vertex of the formed angle, connecting the vertex with the other two positioning points except the vertex to form an angle, and calculating the angle value.
[0166] In some embodiments, before calculating the measurement result according to the positioning points selected by the user on the three-dimensional data model, the method further includes: obtaining the selection operation of the user for the screen points on the display screen, and generating a ray based on the screen points and a preset direction;
[0167] Determining the starting point coordinates of the ray on the near plane and the ending point coordinates of the ray on the far plane of the three-dimensional data model;
[0168] Based on the starting point coordinates, the ending point coordinates, and the mask of the target object, determining the coordinates of the positioning points of the ray on the target object.
[0169] In some embodiments, determining the starting coordinates of a ray on the near plane and the ending coordinates of the ray on the far plane of a three-dimensional data model includes:
[0170] Determining the ray equation of the ray, where the ray equation includes: the distance of moving along the direction vector from the starting point of the ray;
[0171] Calculating the minimum value of the distance of moving from the starting point of the ray along the direction vector to the near plane based on the ray equation;
[0172] Calculating the maximum value of the distance of moving from the starting point of the ray along the direction vector to the far plane based on the ray equation;
[0173] Calculating the starting coordinates of the ray on the near plane based on the minimum value, and calculating the ending coordinates of the ray on the far plane based on the maximum value.
[0174] In some embodiments, calculating the starting coordinates of the ray on the near plane based on the minimum value and calculating the ending coordinates of the ray on the far plane based on the maximum value includes:
[0175] Normalizing the coordinates of the screen point to device coordinates;
[0176] Converting the device coordinates to camera space coordinates according to the projection matrix;
[0177] Converting the camera space coordinates to volume data coordinates, and determining the direction vector in the volume data coordinate system based on a preset direction;
[0178] Calculating the starting coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates;
[0179] Calculating the ending coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates.
[0180] In some embodiments, calculating the starting coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates and calculating the ending coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates includes:
[0181] Multiplying the minimum value by the direction vector to obtain a first product;
[0182] Adding the first product to the volume data coordinates to obtain the starting coordinates of the ray on the near plane;
[0183] Multiplying the maximum value by the direction vector to obtain a second product, and adding the second product to the volume data coordinates to obtain the ending coordinates of the ray on the far plane.
[0184] In some embodiments, determining the coordinates of the positioning point of the ray on the target object based on the starting coordinates, the ending coordinates, and the mask of the target object includes:
[0185] Determine the coordinates of the initial positioning points of the ray between the starting point coordinates and the ending point coordinates;
[0186] Determine the position index of each initial positioning point based on the coordinates of each initial positioning point;
[0187] Determine whether the value of the position index of each initial positioning point is the set value of the target object;
[0188] Determine the initial positioning point whose position index value is the set value of the target object as the positioning point of the ray on the target object, and determine the coordinates of the positioning point.
[0189] In some embodiments, the method further includes: generating a slider based on the positioning point, and the display module is further configured to output the slider.
[0190] In some embodiments, when a selection operation of any target positioning point on the slider is obtained, output the coordinates of the target point.
[0191] Based on the foregoing embodiments, the embodiments of the present application further provide a surgical planning method. Figure 3 It is a schematic flowchart of the implementation of a surgical planning method provided by the embodiments of the present application, as Figure 3 shown, including:
[0192] Step S201, import CT / MR data.
[0193] This data is the data scanned by CT or nuclear magnetic resonance for the patient. Currently, the most common is the DICOM data ending with the dcm format.
[0194] Step S202, construct a three-dimensional model.
[0195] This part depends on the image analysis software to perform three-dimensional modeling on the patient's lesions and other tissues to construct a three-dimensional data model.
[0196] Step S203, select a screen point.
[0197] This part is for the user to observe the location of the lesion in the three-dimensional window and select the corresponding screen point.
[0198] Step S204, obtain the point extraction data coordinates of all lesions on the ray.
[0199] In the embodiments of the present application, step S204 can be implemented by the following steps:
[0200] Normalize the screen coordinates to the device coordinates NDC.
[0201] Convert the NDC coordinates to camera space coordinates according to the projection matrix.
[0202] Convert the camera space coordinates to volume data coordinates.
[0203] Obtain the direction vector in the volume data coordinate system and normalize it, assuming it is D.
[0204] Since the ray equation can be expressed as R(t) = P + t * D, where P is the coordinate of the starting point and D is the normalized direction vector, it is necessary to calculate the t parameter, and t = (P1 - P) / D, where P1 is the coordinate of the near plane. According to this relationship, calculate the t values in the x, y, and z directions respectively. First, calculate the t value when the near plane P1 = (0, 0, 0). Assuming the size of the volume data is (Dim1, Dim2, Dim3), then the P1 of the far plane at this time is (Dim1, Dim2, Dim3). Finally, the calculated t value takes the minimum value among all values in the near plane and the maximum value among all values in the far plane, that is, t Near and t Far .
[0205] Calculate the ray starting point P according to the ray equation Start = P + t Near * D, the ray end point P End = P + t Far * D.
[0206] Obtain all lesion points on the ray according to the mask of the segmented lesion and the ray starting point and end point.
[0207] Evenly divide the points between the end point and the starting point. Assume each point is P tmp = (x, y, z), and calculate the position Index = x + y * Dim1 + z * Dim1 * Dim2 at this time.
[0208] Whether the value at the Index position on the mask at this time is the set value of the lesion. If so, add it to the set of lesion points. If not, continue to calculate the next point.
[0209] Step S205, determine whether the lesion mask point is on the lesion.
[0210] Whether the value at the Index position on the mask at this time is the set value of the lesion. If so, add it to the set of lesion points. If not, continue to calculate the next point.
[0211] Step S206, whether all points have been judged.
[0212] In the embodiment of the present application, if so, execute step S206. If not, execute step S205.
[0213] Step S207, obtain the set of points on the lesion.
[0214] Step S208, the user locates according to the slider and the set display positioning point
[0215] Make all the obtained lesion point sets into a slider to support the user to slide and select points.
[0216] In some embodiments, after positioning, various parameter measurement methods such as distance measurement and angle measurement can be performed according to the obtained points.
[0217] Figure 4 It is a schematic flowchart of a distance measurement provided by an embodiment of the present application, as Figure 4 shown, including:
[0218] Step S301, select the mode as the distance measurement mode.
[0219] Step S302, locate the points on the lesion according to the above method.
[0220] Step S303, locate the points on other tissues (which may include lesions) according to the above method.
[0221] Step S304, calculate and display the spatial distance according to the two obtained points.
[0222] Figure 5 It is a schematic flowchart of an angle measurement provided by an embodiment of the present application, as Figure 5 shown, including:
[0223] Step S401, select the mode as the angle measurement mode.
[0224] Step S402, sequentially select the three required points according to the surgical planning method.
[0225] Step S403, use the middle point of the selected points as the origin of the included angle, and calculate the angle formed by the two line segments.
[0226] The method provided by the embodiment of the present application can intuitively view the position of the current positioning point by positioning the lesion points on the three-dimensional model of the lesion, and can determine the spatial relationship between the lesion and other tissues.
[0227] In the current positioning mode, the points in three-dimensional positioning only adhere to the surface of the lesion, resulting in the doctor being unable to position the points inside the lesion. The method provided by the embodiment of the present application can realize the positioning inside the lesion, enable the doctor to intuitively observe the positioning points, and facilitate accurate positioning.
[0228] For the specific working process in the above method, reference can be made to the corresponding process in the foregoing system embodiment, which will not be elaborated here.
[0229] Figure 6The structural schematic diagram of the electronic device provided by the embodiment of the present application is as follows Figure 6 As shown, the electronic device 3 of this embodiment may include: at least one processor 30 ( Figure 6 only one processor 30 is shown in ), a memory 31, and a computer program 32 stored in the memory 31 and executable on at least one processor 30. When the processor 30 executes the computer program 32, the steps in any of the above method embodiments are implemented, or when the processor 30 executes the computer program 32, the functions of each module / unit in the above system embodiments are implemented.
[0230] Exemplarily, the computer program 32 may be divided into one or more modules / units. One or more modules / units are stored in the memory 31 and executed by the processor 30 to complete the present application. One or more modules / units may be a series of computer program 32 instruction segments capable of performing specific functions, and these instruction segments are used to describe the execution process of the computer program 32 in the electronic device 3.
[0231] The embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program 32, and when the computer program 32 is executed by the processor 30, the steps in any of the above method embodiments can be implemented.
[0232] The embodiment of the present application provides a computer program product. When the computer program product runs on an electronic device, the electronic device can implement the steps in any of the above method embodiments when executed.
[0233] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, to implement all or part of the processes in the above embodiment methods of the present application, the relevant hardware can be completed by instructing with the computer program 32. The computer program 32 can be stored in a computer-readable storage medium. When the computer program 32 is executed by the processor 30, the steps in any of the above method embodiments can be implemented. Among them, the computer program 32 includes computer program code, and the computer program code can be in the form of source code, object code, executable file or some intermediate form, etc. The computer-readable medium can at least include: any entity or device capable of carrying the computer program code to the terminal, a recording medium, a computer memory, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), an electrical carrier signal, a telecommunication signal, and a software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disc, etc. In some jurisdictions, according to legislation and patent practice, the computer-readable medium may not be an electrical carrier signal and a telecommunication signal.
[0234] In the above embodiments, the descriptions of the respective embodiments have their own emphases. For parts not described or recorded in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.
[0235] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.
[0236] In the embodiments provided in this application, it should be understood that the disclosed device / network device and method can be implemented in other ways. For example, the device / network device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the device or unit can be in electrical, mechanical or other forms.
[0237] The units described as separate components may or may not be physically separated. The components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0238] The above-described embodiments are only used to illustrate the technical solutions of this application, rather than to limit them; although this application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included in the protection scope of this application.
Claims
1. A surgical planning system, characterized in that, Including: An input module, a display module, and a control system; the control system is communicatively connected to the input module and the display module, and the control system further includes a processing module configured to: Receive three-dimensional image data of a target object input by the input module; Generate a three-dimensional data model for display by the display module; Calculate a measurement result based on a positioning point selected by a user on the three-dimensional data model, and display the measurement result on the display module.
2. The system according to claim 1, characterized in that, Before calculating the measurement result based on the positioning point selected by the user on the three-dimensional data model, the processing module is further configured to: Obtain a measurement mode selected by the user, where the measurement mode includes a distance measurement mode or an angle measurement mode.
3. The system according to claim 1, wherein Before calculating the measurement result based on the positioning point selected by the user on the three-dimensional data model, the processing module is further configured to: Obtain the number of positioning points selected by the user; Determine the measurement mode based on the number of positioning points. Wherein, when the number of positioning points is two, the measurement mode is determined to be the distance measurement mode; when the number of positioning points is three, the measurement mode is determined to be the angle measurement mode.
4. The system according to claim 2 or 3, characterized in that, The processing module calculates the measurement result based on the positioning point selected by the user on the three-dimensional data model and displays the measurement result on the display module, including: When the measurement mode is the distance measurement mode, determine the distance between the two positioning points based on the coordinates of the two positioning points selected by the user on the three-dimensional data model, and display the distance on the display module, and display the connection line between the two positioning points and the coordinates of the two positioning points.
5. The system according to claim 2 or 3, characterized in that, The processing module calculates the measurement result based on the positioning point selected by the user on the three-dimensional data model and displays the measurement result on the display module, including: When the measurement mode is the angle measurement mode, determine the angle formed by the three positioning points based on the three positioning points selected by the user on the three-dimensional data model, and display the coordinates of the three positioning points and the angle formed by the three positioning points on the display module.
6. The system according to claim 5, wherein Determining the angle formed by the three positioning points based on the three positioning points selected by the user on the three-dimensional data model includes: using the middle point among the three positioning points as the vertex of the formed angle, connecting the vertex with the other two positioning points except the vertex to form the angle, and calculating the angle.
7. The system according to claim 1, wherein Before the processing module calculates the measurement result based on the positioning point selected by the user on the three-dimensional data model, it is further configured to: Obtain a selection operation of the user for a screen point on the display screen, and generate a ray based on the screen point and a preset direction; Determine the starting point coordinates of the ray on the near plane of the three-dimensional data model and the ending point coordinates of the far plane; Based on the starting point coordinates, the ending point coordinates, and the mask of the target object, determine the coordinates of the positioning point of the ray on the target object.
8. The system according to claim 7, characterized in that The determining the starting point coordinates of the ray on the near plane of the three-dimensional data model and the ending point coordinates of the far plane includes: Determine the ray equation of the ray, where the ray equation includes: the distance of moving along the direction vector from the starting point of the ray. Calculate the minimum value of the distance from the ray starting point moving along the direction vector to the near plane based on the ray equation; Calculate the maximum value of the distance from the ray starting point moving along the direction vector to the far plane based on the ray equation; Calculate the starting point coordinates of the ray on the near plane based on the minimum value, and calculate the ending point coordinates of the ray on the far plane based on the maximum value.
9. The system according to claim 8, wherein The calculating the starting point coordinates of the ray on the near plane based on the minimum value, and calculating the ending point coordinates of the ray on the far plane based on the maximum value includes: Normalize the coordinates of the screen point to device coordinates; Convert the device coordinates to camera space coordinates according to the projection matrix; Convert the camera space coordinates to volume data coordinates, and determine the direction vector in the volume data coordinate system based on a preset direction; Calculate the starting point coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates; Calculate the ending point coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates.
10. The system according to claim 9, wherein The calculating the starting point coordinates of the ray on the near plane based on the minimum value, the direction vector, and the volume data coordinates, and calculating the ending point coordinates of the ray on the far plane based on the maximum value, the direction vector, and the volume data coordinates includes: Multiply the minimum value by the direction vector to obtain a first product; Add the first product to the volume data coordinates to obtain the starting point coordinates of the ray on the near plane; Multiply the maximum value by the direction vector to obtain a second product, and add the second product to the volume data coordinates to obtain the ending point coordinates of the ray on the far plane.
11. The system according to claim 7, characterized in that, The determining the coordinates of the positioning point of the ray on the target object based on the starting point coordinates, the ending point coordinates, and the mask of the target object includes: Determine the coordinates of the initial positioning point between the starting point coordinates and the ending point coordinates of the ray; Determine the position index of each initial positioning point based on the coordinates of each initial positioning point; Determine whether the value of the position index of each initial positioning point is the set value of the target object; Determine the initial positioning point whose position index value is the set value of the target object as the positioning point of the ray on the target object, and determine the coordinates of the positioning point.
12. The system according to any one of claims 7 to 11, characterized in that, The processing module is used to generate a slider based on the positioning point, and the display module is further used to output the slider, and output the coordinates of the target point in the case of obtaining a selection operation of any target positioning point on the slider.