A visual measurement positioning method for human scoliosis
Patent Information
- Application Number
- CN202611357894.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-09-03
- Publication Date
- 2026-10-30
AI Technical Summary
若上述数据分别直接作用于复查时间,容易出现同一复查节点被重复调整、较早事件覆盖后到达的有效记录,或者提前复查与延后复查结果相互冲突的情况
[0041](1)针对视觉测量记录、患者状态记录和复查规则分别形成且版本依据容易混用的问题,通过校验测量版本、按评估时间匹配目标规则版本并将二者绑定至评估上下文记录,使复查节点实例对应明确的测量依据和规则依据;通过复查时间窗保留提前、目标和延后边界,使后续节点调整持续受同一时间约束控制。
Smart Images

Figure CN123017454A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of human spinal visual measurement data processing and medical follow-up information processing technology, and in particular to a visual measurement and localization method for human scoliosis. Background Technology
[0002] In the field of visual measurement and follow-up information processing of the human spine, existing solutions typically acquire images of the human back using a visual measurement terminal, extract the location results of key points in the spine, calculate the Cobb angle measurement results, or form a range of scoliosis severity. Then, based on the patient's stage, treatment intervention method, or risk level, pre-set follow-up rules are matched to generate follow-up time or follow-up tasks. Some solutions also receive patient symptom change data, periodic assessment data, and medical resource appointment records, and adjust follow-up arrangements or update task status accordingly.
[0003] Existing solutions often process data based on fixed follow-up times, single feedback results, or pre-defined state transition relationships. When time data, symptom change data, and phased assessment data arrive asynchronously from different terminals, discrepancies may arise between the occurrence and reception times of different data, duplicate submissions of the same event, delayed arrival of older events, and multiple events corresponding to opposite adjustment directions. If these data directly affect the follow-up time, it can easily lead to repeated adjustments of the same follow-up node, earlier events overwriting valid records that arrive later, or conflicts between early and delayed follow-up results.
[0004] Furthermore, execution receipts returned by the medical resource appointment interface, reminder terminal, and follow-up terminal may be duplicated, delayed, or arrive in different orders. Existing solutions, which only update node status based on the execution results in the receipts, struggle to distinguish the corresponding node status versions. When appointment creation, appointment cancellation, and follow-up completion results arrive simultaneously, issues arise such as old execution results overwriting the current node status, node status being out of sync with follow-up tasks, and difficulties in handling the repeated generation of subsequent follow-up tasks for the same follow-up completion record. Therefore, it is necessary to address the issues of difficulty in uniquely forming node adjustment results, inconsistent node status connections, and duplicate generation of follow-up nodes in the next cycle when follow-up data and execution receipts arrive asynchronously from multiple sources, focusing on the follow-up nodes corresponding to spinal visual measurement records. Summary of the Invention
[0005] To address the aforementioned technical problems, this invention provides a visual measurement and localization method for human scoliosis, comprising:
[0006] S100: Obtain spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records; verify the validity and measurement version of the spinal visual measurement records, determine the target rule version according to the assessment time, bind the patient stage records, treatment intervention records, measurement versions, and target rule versions, and generate assessment context records;
[0007] S200. Based on the evaluation context record matching review rule conditions, generate a review time window and a review node instance with a status version;
[0008] S300. Based on the review node instance, generate trigger event records from time data, symptom change data, and phased assessment data; determine the data age by the event occurrence time and event reception time, verify the duplication status of the event identifier, and perform conflict adjudication on multiple valid trigger event records of the same node according to priority, mutual exclusion relationship, and adjustment boundary to generate node adjustment records.
[0009] S400: Receive the execution receipt record carrying the request status version; perform state migration when the request status version is consistent with the status version and the migration preconditions are met; when receiving the review completion record, query the next cycle review node according to the completion event identifier and the source node identifier; if it does not exist, update the evaluation context record, close the node, and generate the next cycle review node and node source association record.
[0010] Furthermore, the spinal visual measurement record includes subject identification, spinal key point localization results, Cobb angle measurement results, scoliosis severity range, measurement time, measurement version, data quality status, and record validity period;
[0011] The verification of the validity of the spinal visual measurement records includes verifying the data integrity, data quality status, and record validity period of the spinal visual measurement records. When the verification passes, a valid visual measurement status is generated.
[0012] The assessment context record includes subject identification, patient stage record, treatment intervention record, measurement version, assessment time, and target rule version.
[0013] Furthermore, the review rule record includes review rule conditions, basic follow-up interval, allowable advance, allowable delay, effective time interval, and rule version;
[0014] Match the evaluation time with the effective time interval, and determine the rule version that includes the evaluation time as the target rule version;
[0015] The target re-examination time is obtained by adding the assessment time to the basic follow-up time interval. The earliest re-examination time is obtained by subtracting the allowable advance from the target re-examination time. The latest re-examination time is obtained by adding the target re-examination time to the allowable delay. The re-examination time window is generated by the earliest re-examination time, the target re-examination time, and the latest re-examination time.
[0016] Furthermore, the re-examination node instance includes node identifier, subject identifier, earliest re-examination time, target re-examination time, latest re-examination time, node status, status version, assessment context record identifier, and rule version;
[0017] When generating the review node instance, the node status is set to pending review, the status version is set to the initial status version, and the evaluation context record identifier and the target rule version are written into the review node instance.
[0018] Furthermore, the trigger event record includes an event identifier, event type, event occurrence time, event reception time, data source, associated node, and valid status;
[0019] The age of the data is determined based on the difference between the event reception time and the event occurrence time;
[0020] When the data age is within the data validity period and the node status of the associated node meets the event application conditions, the validity status is set to valid;
[0021] The duplicate status is verified based on the event identifier and associated node. If a trigger event record with the same event identifier and associated node already exists, the newly received trigger event record is determined to be a duplicate event.
[0022] Furthermore, when the same associated node corresponds to multiple valid trigger event records, the adjustment direction of advancing, maintaining, or delaying is determined according to the event type;
[0023] Conflict adjudication is performed on different adjustment directions based on the priority, mutual exclusion relationship and event sequence, and the earliest review time, target review time and latest review time after adjustment are limited according to the adjustment boundary;
[0024] The node adjustment record includes the event identifiers involved in conflict adjudication, the pre-adjustment review time window, the post-adjustment review time window, and the adjustment direction.
[0025] Furthermore, the execution receipt record includes a receipt identifier, execution result, associated node, request status version, and receipt validity status;
[0026] When the request status version is consistent with the status version of the review node instance, the receipt is valid, and the node status meets the migration prerequisites, the status migration is performed according to the execution result, the status version is updated, and a status migration record is generated.
[0027] If a state transition record corresponding to the receipt identifier already exists, return the state transition record while keeping the node state and state version unchanged;
[0028] When the requested state version is inconsistent with the state version, a state version inconsistency is generated.
[0029] Furthermore, when the current time reaches the target review time and the node status has not migrated to scheduled or completed, a follow-up task associated with the node identifier is generated;
[0030] If the current time exceeds the latest review time, the overdue level shall be determined according to the duration of the overdue review time.
[0031] When the previous follow-up task has not received a corresponding execution receipt record and the node status is still pending review, the next level follow-up task is generated.
[0032] When the node status transitions to "reserved" or "completed", the follow-up task associated with the node identifier that has not been executed is cancelled.
[0033] Furthermore, the review completion record includes a completion event identifier, completion time, source node identifier, and identifier of this spinal visual measurement record;
[0034] The next cycle review node is queried based on the completion event identifier and the source node identifier; if the next cycle review node is not found, the assessment context record is updated based on the current spinal visual measurement record, the target rule version is re-determined based on the updated assessment context record, and the next cycle review node is generated.
[0035] When the next cycle review node is found, the found next cycle review node is returned, and the next cycle review node is not generated repeatedly;
[0036] The source node identifier, completion event identifier, updated evaluation context record, and next cycle review node are bound together to generate the node source association record.
[0037] Furthermore, after the review node instance is generated, the target rule version remains unchanged within the review period corresponding to the review node instance;
[0038] When the treatment intervention record is changed, a trigger event record is generated from the changed treatment intervention record, and a conflict resolution is performed on the current review time window based on the trigger event record;
[0039] After the current review node is closed, the modified treatment intervention record is written into the updated assessment context record, and the target rule version corresponding to the next cycle review node is determined based on the updated assessment context record.
[0040] The following are its main beneficial effects:
[0041] (1) To address the issue that visual measurement records, patient status records, and review rules are formed separately and the versions are easily confused, the measurement version is verified, the target rule version is matched according to the assessment time, and the two are bound to the assessment context record, so that the review node instance corresponds to a clear measurement basis and rule basis; the review time window retains the boundaries of early, target, and late, so that the subsequent node adjustment is continuously controlled by the same time constraint.
[0042] (2) To address the issues of duplicate submissions, late arrivals, and opposite adjustment directions when multi-source review data arrives asynchronously, a unified trigger event record, data age verification, duplicate status verification, and conflict resolution are used to form a node adjustment record for multiple valid trigger events, thereby preventing the same review node from being modified repeatedly or covered by events in opposite directions.
[0043] (3) To address the issues of duplicate, delayed, or altered arrival order of execution receipts returned by appointment, reminder, and review terminals, the execution receipts are applied to the corresponding node status through joint verification of the request status version, current status version, and migration preconditions. The successor node is queried by completing the event identifier and the source node identifier, so that the same review completion record corresponds to a review node in the next cycle, and the association between the review cycles is retained through the node source association record. Attached Figure Description
[0044] Figure 1 A flowchart illustrating a visual measurement and localization method for human scoliosis provided in an embodiment of this application;
[0045] Figure 2 This is a structural block diagram of a visual measurement and localization method for human scoliosis provided in an embodiment of this application. Detailed Implementation
[0046] Example 1: Refer to Figure 1 This is a flowchart illustrating a visual measurement and localization method for human scoliosis provided in an embodiment of the present invention. The process may include at least steps S100-S400:
[0047] S100: Obtain spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records; verify the validity and measurement version of the spinal visual measurement records, determine the target rule version according to the assessment time, bind the patient stage records, treatment intervention records, measurement versions, and target rule versions, and generate assessment context records;
[0048] S200. Based on the evaluation context record matching review rule conditions, generate a review time window and a review node instance with a status version;
[0049] S300. Based on the review node instance, generate trigger event records from time data, symptom change data, and phased assessment data; determine the data age by the event occurrence time and event reception time, verify the duplication status of the event identifier, and perform conflict adjudication on multiple valid trigger event records of the same node according to priority, mutual exclusion relationship, and adjustment boundary to generate node adjustment records.
[0050] S400: Receive the execution receipt record carrying the request status version; perform state migration when the request status version is consistent with the status version and the migration preconditions are met; when receiving the review completion record, query the next cycle review node according to the completion event identifier and the source node identifier; if it does not exist, update the evaluation context record, close the node, and generate the next cycle review node and node source association record.
[0051] S100: Obtain spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records; verify the validity and measurement version of the spinal visual measurement records, determine the target rule version according to the assessment time, bind the patient stage records, treatment intervention records, measurement versions, and target rule versions, and generate assessment context records.
[0052] This step is executed by the data access module and the assessment context generation module of the medical server. The data access module is connected to the visual measurement terminal, the patient record data source, the medical terminal, and the rule base, respectively; the visual measurement terminal submits the spinal visual measurement record; the patient record data source submits the patient stage record; the medical terminal submits the treatment intervention record; and the rule base provides the review rule record. When the medical server receives the spinal visual measurement record, it first reads the subject identifier and then uses the subject identifier to query the corresponding patient stage record and the currently effective treatment intervention record; the query results, along with the current spinal visual measurement record, are entered into the assessment context generation module.
[0053] The spinal visual measurement record is a structured record generated by a visual measurement terminal for a single measurement of a subject. The spinal visual measurement record includes subject identification, spinal key point localization results, Cobb angle measurement results, scoliosis severity range, measurement time, measurement version, data quality status, and record validity period. The spinal key point localization results record the location identifiers and coordinates of multiple spinal key points; the Cobb angle measurement results record the angle value formed in this measurement and its corresponding measurement unit; the scoliosis severity range records the grading range corresponding to the Cobb angle measurement results; the measurement version records the visual measurement configuration version used when generating the spinal key point localization results and Cobb angle measurement results; the data quality status records whether the measurement data meets the conditions for completeness, clarity, posture consistency, and result output; and the record validity period records the time range within which the spinal visual measurement record is allowed to participate in the review rule matching.
[0054] In one implementation, a visual measurement terminal receives an image of a human back, locates key points of the spine, and generates Cobb angle measurement results. The visual measurement terminal then encapsulates the measurement results into a spinal visual measurement record and sends it to a medical server. This step does not limit the specific location method of the spinal key points; the human back image can be a regular two-dimensional image, a depth image, or a back image generated by a three-dimensional imaging device. The medical server does not re-perform the spinal key point localization but instead reads the structured results, measurement version, and data quality status from the spinal visual measurement record. In another implementation, the spinal visual measurement record is accessed via a medical data interface; the medical data interface converts the external measurement results into the same field structure as in this implementation and retains the original measurement record identifier and measurement version.
[0055] The patient stage record represents the subject's age stage or growth and development stage at the assessment time. The patient stage record includes the subject identifier, stage type, stage value, recording time, and validity status. In one implementation, the stage type is an age stage, and the stage value is formed based on the date of birth and assessment time. In another implementation, the stage type is a growth and development stage already confirmed in the medical records. When multiple historical versions of the patient stage record exist, the assessment context generation module filters for the most recent record with a valid status before the assessment time, based on the recording time. If no valid patient stage record is found, an incomplete data status is generated, the assessment context record is not generated temporarily, and the missing field identifier is written to the abnormal record.
[0056] The treatment intervention record represents the treatment intervention method that is in effect at the assessment time. The treatment intervention record includes the subject identifier, intervention method, start time, end time, record version, and validity status. The intervention method can be one of observation, orthotics, training, or postoperative rehabilitation. When the end time is empty, it indicates that the treatment intervention record remains in effect until the validity status is updated. When multiple treatment intervention records exist, the assessment context generation module filters records covering the assessment time based on the start time, end time, and validity status. When multiple valid records correspond to the same assessment time, multiple treatment intervention records are encapsulated according to the combination conditions configured in the review rules, or a status pending manual confirmation is generated. When a treatment intervention record changes within the current review cycle, it does not directly overwrite treatment intervention records already written to the assessment context record. The changed treatment intervention record generates a trigger event record in S300 and is written to the updated assessment context record after the current review node is closed.
[0057] The review rule records are provided by a rule base. Each review rule record includes review rule conditions, basic follow-up interval, allowable advance, allowable delay, effective time interval, and rule version. Review rule conditions include scoliosis severity interval conditions, patient stage conditions, and treatment intervention conditions. Each review rule record corresponds to a rule version and an effective time interval. When multiple rule versions exist in the rule base, the assessment context generation module does not directly select the latest version based on the current system time. Instead, it uses the current measurement time as the assessment time and matches the assessment time with the effective time intervals of each review rule record. The rule version whose effective time interval includes the assessment time is determined as the target rule version. When the effective time intervals of multiple rule versions overlap, a target rule version is selected according to the version order and effectiveness priority recorded in the rule base, and a rule matching record is generated. If no target rule version is matched, a rule matching anomaly record is generated, and the spinal visual measurement record is not entered into S200.
[0058] When the medical server performs validity verification on spinal visual measurement records, it first verifies data integrity. Data integrity verification includes checking the presence of the subject identifier, measurement time, measurement version, and data quality status; checking whether the spinal key point localization results, Cobb angle measurement results, and scoliosis severity range conform to the current visual measurement record's output configuration; and checking whether the subject identifier is consistent with the subject identifier in the patient's stage records and treatment intervention records. If a field is missing, the medical server generates a data incomplete status and writes the spinal visual measurement record identifier, the missing field name, and the receipt time into the anomaly log.
[0059] After data integrity verification passes, the medical server verifies the data quality status. This data quality status is generated by the visual measurement terminal based on the current measurement data. If the data quality status is unavailable, the medical server generates an unavailable measurement record status and retains the original spinal visual measurement record, but does not generate an assessment context record based on this record. If the data quality status is available, the medical server continues to verify the record validity period. If the assessment time is within the record validity period, a valid visual measurement status is generated. If the assessment time is later than the end time of the record validity period, the medical server marks the record as invalid. Invalid records can be retained in the history record but are not included in the generation of this review node instance.
[0060] Measurement version verification includes reading the measurement field configuration corresponding to the measurement version and checking whether the spinal key point localization results, Cobb angle measurement results, and scoliosis severity range are formed by the same measurement version. When the spinal key point localization results and Cobb angle measurement results come from different measurement versions, the medical server generates a measurement version inconsistency status. In one implementation, the medical server does not merge the results of different measurement versions and waits for the visual measurement terminal to resubmit the spinal visual measurement record of the same measurement version. In another implementation, the rule base stores the comparability relationship between measurement versions. Only when two measurement versions are recorded as comparable are the corresponding results written into the same evaluation context record, and the original measurement version is retained in the evaluation context record.
[0061] The severity range of scoliosis can be directly read from the spinal visual measurement record. If the spinal visual measurement record does not separately save the severity range of scoliosis, the medical server matches the Cobb angle measurement result with the angle range in the review rule record to generate the severity range of scoliosis. This matching only forms the data fields required for the review rule call and does not form a disease diagnosis conclusion. When the Cobb angle measurement result happens to be at the boundary value of an adjacent range, the corresponding range is selected according to the boundary inclusion method pre-recorded in the review rule record; if the rule record does not record the boundary inclusion method, a rule matching anomaly record is generated.
[0062] When the visual measurement validity status is valid, the patient stage record and treatment intervention record are both valid, and the target rule version is determined, the assessment context generation module binds the subject identifier, scoliosis severity range, patient stage record, treatment intervention record, measurement version, assessment time, and target rule version to generate an assessment context record. This binding means writing the spinal visual measurement record identifier, patient stage record identifier, treatment intervention record identifier, measurement version, assessment time, and target rule version separately into the assessment context record, rather than copying the entire content of each original record. The assessment context record may also include an assessment context record identifier, generation time, and visual measurement validity status; subsequent steps read the corresponding input based on the assessment context record identifier.
[0063] In one specific implementation, Subject A completed a back visual measurement on January 10, 2026; the measurement version in the spinal visual measurement record is V3, the data quality status is available, and the record validity period expires on February 9, 2026; the patient stage record indicates that Subject A is in the preset age stage P2; the treatment intervention record indicates that the current intervention method is an orthosis; the effective time interval of rule version R2026-01 in the rule base is from January 1, 2026 to June 30, 2026. The medical server uses January 10, 2026 as the assessment time and determines R2026-01 as the target rule version; the medical server binds Subject A's scoliosis severity interval, patient stage P2, orthosis intervention record, measurement version V3, and target rule version R2026-01 to form an assessment context record C1001.
[0064] The assessment context record generated through the above processing serves as the input for S200. S200 reads the scoliosis severity range, patient stage record, treatment intervention record, assessment time, and target rule version from the assessment context record, and generates a review time window and review node instance based on the corresponding review rule conditions. Visual measurement validity status, rule matching anomaly records, and measurement version inconsistency status are stored on the medical server. When supplementary records or measurement records of the same version are subsequently received, the medical server re-executes S100, without unjustifiably overwriting the already generated valid assessment context record.
[0065] S200. Based on the evaluation context record matching review rule conditions, generate a review time window and a review node instance with a status version.
[0066] This step is performed by the rule matching module and the follow-up node generation module on the medical service side. The rule matching module receives the assessment context record generated by S100; the follow-up node generation module receives the basic follow-up interval, allowable advance, and allowable delay generated by the rule matching module. The rule matching module also reads the follow-up rule record corresponding to the target rule version from the rule base based on the target rule version in the assessment context record; after the current follow-up node instance is generated, the target rule version remains unchanged within the follow-up period corresponding to the follow-up node instance.
[0067] The review rule conditions are the matching conditions for the scoliosis severity range, patient stage records, and treatment intervention records in the target rule version. The rule matching module first filters candidate review rule records by scoliosis severity range, and then matches the candidate review rule records by patient stage records and treatment intervention records; candidate review rule records that meet all three conditions are determined as effective review rule records. When there are multiple candidate review rule records, one is selected according to the priority pre-recorded in the rule record; when the priorities are the same and the rule conditions overlap, a rule matching anomaly record is generated, and the evaluation context record is marked as pending manual confirmation.
[0068] In one implementation, the review rule conditions are correlated according to the scoliosis severity range, patient stage, and treatment intervention method. The rule matching module reads three fields from the assessment context record and searches for review rule records whose field values completely match within the target rule version. In another implementation, the review rule conditions include range conditions and enumeration conditions. Scoliosis severity ranges are matched with patient stage records according to the range, and treatment intervention records are matched according to the intervention method identifier. The conditions in the review rule records only participate in the generation of the review time window and do not change the original measurement results in the spinal visual measurement record.
[0069] The basic follow-up interval represents the time length between the assessment time and the target review time; the allowed advance amount represents the time boundary for adjusting the target review time forward; and the allowed delay amount represents the time boundary for adjusting the target review time backward. The rule matching module reads the basic follow-up interval, allowed advance amount, and allowed delay amount from the effective review rule record and sends these three fields, along with the assessment context record identifier, to the review node generation module. When a field value is missing, the rule matching module does not use fields from other rule versions to supplement the current rule version; instead, it generates a rule matching exception record.
[0070] The review node generation module adds the assessment time to the basic follow-up interval to obtain the target review time; subtracts the allowable advance time from the target review time to obtain the earliest review time; adds the target review time to the allowable delay time to obtain the latest review time; and generates a review time window from the earliest review time, the target review time, and the latest review time. If the earliest review time is later than the target review time, the target review time is later than the latest review time, or the allowable advance time or allowable delay time is negative, an abnormal time window record is generated, and no review node instance is generated.
[0071] In one implementation, the assessment time is represented by the time the medical server receives the spinal visual measurement record; in another implementation, the assessment time is represented by the measurement time in the spinal visual measurement record. When there is a difference, the assessment time source configured in the review rule record is used first; if no rule record is configured, the measurement time in the spinal visual measurement record is used. All time fields are saved according to a unified time zone and a unified time format; when the patient terminal, visual measurement terminal, or medical terminal uses different time zones, the medical server writes the original time and the converted unified time into separate records upon access.
[0072] The review node instance is a data record generated for a single review to be performed. The review node instance includes a node identifier, subject identifier, earliest review time, target review time, latest review time, node status, status version, assessment context record identifier, and rule version. The review node generation module assigns a node identifier to each new node; the node identifier remains unique across all review nodes for the current subject. The review node generation module sets the node status to pending review, sets the status version to the initial status version, and writes the assessment context record identifier and target rule version into the review node instance.
[0073] In one implementation, the initial state version is represented by the integer 1; the state version increments by 1 for each valid state transition. In another implementation, the state version is represented by a version identifier with an ordered relationship; the specific representation of the state version does not change the processing relationship of the state version participating in the migration verification. After the review node instance is generated, the review node generation module writes the generation time, the source measurement record identifier, and the review period identifier; these fields can be used by S300 to associate trigger event records and by S400 to query the source node.
[0074] The target rule version remains unchanged within the current review period. This means that even if a new rule version is released in the rule base after the review node instance is generated, the current review node instance retains the target rule version written at the time of its generation. The new rule version in the rule base does not directly overwrite the current node's basic follow-up interval, allowable advance, and allowable delay. When a treatment intervention record change occurs at the current node, the change is recorded as a trigger event in S300, and conflict resolution is performed according to the adjustment boundaries in the rule version bound to the current node. After the current node is closed, the updated assessment context record determines the target rule version corresponding to the next review node based on the new assessment time.
[0075] In one specific implementation, the assessment context record C1001 formed by S100 corresponds to the target rule version R2026-01. The rule matching module matches the baseline follow-up interval of 180 days, the allowable advance of 14 days, and the allowable delay of 21 days based on the severity interval of scoliosis, patient stage P2, and orthotic intervention record. When the assessment time is January 10, 2026, the target follow-up time is July 9, 2026; the earliest follow-up time is June 25, 2026; and the latest follow-up time is July 30, 2026. The follow-up node generation module forms a follow-up time window from the above three times and generates a follow-up node instance N2001. The node status of N2001 is pending follow-up, the status version is 1, the assessment context record identifier is C1001, and the rule version is R2026-01.
[0076] After a review node instance is generated, the medical server checks whether a review node instance with the same status (pending review), assessment context record identifier, and rule version already exists for the same subject. If a corresponding node exists, the existing review node instance is returned, and it is not created again; otherwise, a new review node instance is saved. This check does not replace the completion event verification of the review node for the next cycle in S400, but rather handles the duplicate submission of the same assessment context caused by the retry request in S200.
[0077] The review node instance formed through the above processing is used as an object by both S300 and S400. S300 reads the node identifier, review time window, node status, status version, and rule version to generate a trigger event record associated with that node; S400 reads the node identifier, node status, and status version to perform migration verification on medical resource appointment records, reminder execution receipt records, and review completion records. The rule version in the review node instance continues to participate in the query of event applicability conditions and adjustment boundaries within the current period.
[0078] S300. Based on the review node instance, generate trigger event records from time data, symptom change data, and phased assessment data; determine the data age by the event occurrence time and event reception time, verify the duplication status of the event identifier, and perform conflict resolution on multiple valid trigger event records of the same node according to priority, mutual exclusion relationship, and adjustment boundary to generate node adjustment records.
[0079] This step is executed by the trigger event handling module and node adjustment module of the medical server. The trigger event handling module receives the follow-up node instance formed by S200 and continuously receives time data, symptom change data, and phased assessment data. Time data is generated by the medical server according to a preset examination cycle; symptom change data is submitted by the patient terminal or medical terminal; phased assessment data is submitted by the visual measurement terminal, medical terminal, or medical data interface. When a treatment intervention record is changed, the changed treatment intervention record is accessed according to the trigger event record structure of this step and participates in the current follow-up time window adjustment as a trigger event record of the treatment intervention change type.
[0080] The time data includes the current time, associated nodes, and time event types. The medical server reads repeat-examination node instances that are in a pending or reminded state according to a preset examination cycle. When the current time falls within the time range between the earliest repeat-examination time and the target repeat-examination time, time data of the "reminder preparation" type is generated; when the current time reaches the target repeat-examination time, time data of the "due" type is generated; when the current time exceeds the latest repeat-examination time, time data of the "overdue" type is generated. Both the event occurrence time and the event reception time are recorded by the medical server; they can be the same, or there may be a difference due to task queue delays.
[0081] The symptom change data includes subject identifier, symptom type, symptom severity, occurrence time, submission time, and patient terminal record identifier. Symptom type can record changes in back pain or posture; symptom severity is represented according to the grading method corresponding to the follow-up rule record in the patient terminal. When the patient terminal submits symptom change data, it also submits the current subject identifier; the event processing module queries the follow-up node instance currently in a pending, reminded, or scheduled state based on the subject identifier, and writes the found node identifier into the associated node field. If no associated node is found, an abnormal associated node record is generated, the symptom change data is temporarily stored, but the follow-up time window is not adjusted.
[0082] The interim assessment data represents the measurement changes or treatment responses between the current and previous assessment stages. This data includes subject identification, current measurement record identification, previous measurement record identification, assessment time, direction of change, and data quality status. In one implementation, the interim assessment data is generated by a medical terminal based on two spinal visual measurement records. In another implementation, the medical terminal reads two identical or comparable spinal visual measurement records and generates candidate adjustment directions (advanced, maintained, or delayed) based on the Cobb angle measurement results or changes in the scoliosis severity range. When measurement versions are not comparable, the interim assessment data is set to unavailable and does not participate in the follow-up time window adjustment.
[0083] The trigger event record includes an event identifier, event type, event occurrence time, event reception time, data source, associated node, and validity status. The trigger event processing module sets the event type based on the input data type; time data corresponds to a time event type; symptom change data corresponds to a symptom change event type; phased assessment data corresponds to a phased assessment event type; and changed treatment intervention records correspond to a treatment intervention change event type. The data source record records the terminal or medical service terminal that generated the input data; the associated node record records the node identifier of the review node instance affected by this event.
[0084] In one implementation, the event identifier is formed by the data source, event type, subject identifier, event occurrence time, and source record identifier; when the same record is retransmitted from the same source terminal, the event identifier remains unchanged. In another implementation, the external terminal has already provided a unique event identifier, and the medical server retains this event identifier and adds an associated node field. The event identifier and associated node jointly participate in the duplicate status verification; only the event type or event occurrence time is compared, and it is not used as the sole condition for identifying duplicate events.
[0085] The event handling module determines the data age by subtracting the event occurrence time from the event reception time. If the event occurrence time is later than the event reception time, an event time anomaly record is generated; if both the event occurrence and reception times are missing, the validity status is set to invalid. The data age is matched with the data validity period for the corresponding event type; if the data age is within the data validity period and the node status of the associated node meets the event's applicable conditions, the validity status is set to valid. If the data age exceeds the data validity period, the event is marked as a late event; late events retain the original input data and event fields but do not directly update the current review time window.
[0086] Different event types can be configured with different data validity periods. In one implementation, the data validity period for time-based events covers the corresponding scheduled inspection cycle; the data validity period for symptom change events is configured based on the occurrence time of symptom data; and the data validity period for phased assessment events is configured based on the validity period of measurement records. The specific duration is stored in the event application conditions corresponding to the target rule version and is not hardcoded in the event triggering module. When a certain event type is not configured in the target rule version, the validity status of that event type is set to invalid, and an event application exception record is generated.
[0087] The event triggering module checks for duplicate events based on the event identifier and associated node. If a trigger event record with the same event identifier and associated node already exists in the event log database, the newly received trigger event record is identified as a duplicate event. Duplicate events do not re-enter the node adjustment module; instead, the existing trigger event record and corresponding node adjustment record are returned. If the event identifier is the same but the associated node is different, or the associated node is the same but the event identifier is different, it is not directly identified as a duplicate event. The event triggering module retains the records for each and performs subsequent checks based on the event source and node source relationship.
[0088] The applicable conditions and node status of an event jointly limit whether it participates in conflict resolution. The "Pending Re-examination" status can receive time-based events, symptom change events, interim assessment events, and treatment intervention change events; the "Already Notified" status can receive symptom change events, interim assessment events, and appointment-related events; when the "Already Appointed" status receives a symptom change event, it can create an advance candidate record for the re-examination time window, but will not directly cancel existing medical resource appointment records; when the "Completed" or "Closed" status receives a regular time-based event, symptom change event, or interim assessment event, it is marked as an inapplicable event, and the re-examination time window is not updated.
[0089] The node adjustment module generates candidate adjustment directions (advance, maintain, or delay) based on the event type. When the symptom severity meets the advance criteria recorded in the target rule version, the symptom change event forms an advance direction; if the symptom severity does not meet the advance criteria, a maintain direction may be formed. For interim assessment data, when the change in measurement results meets the advance criteria, an advance direction is formed; when the interim result meets the maintain criteria, a maintain direction is formed; and when the interim result meets the delay criteria, a delay direction is formed. When a treatment intervention record is changed, an advance, maintain, or delay direction is formed based on the treatment intervention change criteria in the current target rule version; this event does not change the target rule version bound to the current review node.
[0090] When only one valid trigger event record exists for the same associated node, the node adjustment module generates a node adjustment record based on the candidate adjustment direction and adjustment boundary of that event. When multiple valid trigger event records exist for the same associated node, the node adjustment module first sorts them by event priority; the priority is recorded by the event processing conditions corresponding to the target rule version. When there is a mutual exclusion relationship between two events, only the event with higher priority is retained as the basis for this adjustment; when two events are allowed to be merged, candidate review time windows are formed based on their respective adjustment directions and adjustment amounts; when multiple candidate review time windows exist, an adjustment result that meets the rule conditions is selected based on the event sequence.
[0091] The event sequence is sorted primarily by event occurrence time and secondarily by event reception time. When multiple events with the same occurrence time and priority have opposite adjustment directions, the node adjustment module generates an event conflict state and forms an adjustment result according to the dominant event type recorded in the mutual exclusion relationship. If no dominant event type is configured in the mutual exclusion relationship, the review node instance is updated to a pending manual confirmation state, while maintaining the original review time window. Late events with an earlier occurrence time but a later reception time can participate in conflict resolution if the data age is still within the data validity period; otherwise, they will not participate in this adjustment.
[0092] The adjustment boundaries are jointly defined by the earliest review time, target review time, and latest review time in the current review node instance, as well as the adjustment conditions in the target rule version. The new target review time formed in the advance direction must not be earlier than the earliest allowed review time; the new target review time formed in the delay direction must not be later than the latest allowed review time. When the node adjustment module synchronously adjusts the corresponding earliest and latest review times based on the new target review time, it is still subject to the total advance and total delay boundaries in the target rule version. When a candidate adjustment time exceeds the boundary, the candidate time is truncated to the corresponding boundary value, and a boundary adjustment identifier is written into the node adjustment record.
[0093] The node adjustment record includes the event identifier involved in conflict adjudication, the pre-adjustment review time window, the post-adjustment review time window, and the adjustment direction. The node adjustment record may also record associated nodes, generation time, target rule version, and event conflict status. After the node adjustment record is generated, the node adjustment module updates the review time window in the review node instance based on the associated nodes and the current status version. Upon successful update, the earliest review time, target review time, and latest review time after adjustment are saved. If the status version has changed, the time window corresponding to the new status is not overwritten; instead, an inconsistent status version is generated, and the current node status is reread.
[0094] In one specific implementation, the target review time for review node instance N2001 is July 9, 2026. The medical server receives symptom change event E3001 on May 20, 2026. The event occurred on May 19, 2026, and was received on May 20, 2026. The data age for this event is within the corresponding data validity period, forming an advance direction. On the same day, the medical server receives interim assessment event E3002, which occurred on May 18, 2026. This interim assessment event forms a delayed direction. The target rule version records that symptom change events take precedence over interim assessment events, and the two are mutually exclusive when their adjustment directions are opposite. The node adjustment module uses the new target review time formed by E3001 and restricts the new target review time to after the earliest review time within the current review time window, generating node adjustment record A3001.
[0095] In another specific implementation, the treatment intervention record is changed from observation to orthosis; the medical terminal submits the changed treatment intervention record, triggering the event processing module to generate a treatment intervention change event E3003; E3003 forms an advance direction based on the event processing conditions in the current target rule version. The current review node retains the original target rule version; the node adjustment module adjusts the current review time window according to E3003. After the current node is closed, the changed treatment intervention record enters the updated post-evaluation context record formed in S400 and participates in the target rule version matching for the next cycle.
[0096] The node adjustment record and updated review time window generated by the above processing are written back to the review node instance. S400 receives the updated review node instance and reads the node identifier, node status, status version, target review time, and latest review time; medical resource appointment records, reminder execution receipt records, and review completion records are all associated with the review node instance using the node identifier. Duplicate events, late events, event conflict states, and inconsistent status versions are stored in the event log and will re-enter the corresponding processing stage upon receiving supplementary data or manual confirmation results.
[0097] S400: Receive the execution receipt record carrying the request status version; perform state migration when the request status version is consistent with the status version and the migration preconditions are met; when receiving the review completion record, query the next cycle review node according to the completion event identifier and the source node identifier; if it does not exist, update the evaluation context record, close the node, and generate the next cycle review node and node source association record.
[0098] This step is executed by the node status migration module, follow-up module, appointment module, and periodic feedback module of the medical service terminal. The node status migration module receives the re-examination node instance updated by S300, and receives medical resource appointment records, reminder execution receipt records, re-examination execution receipt records, and execution receipt records generated by manual processing; the follow-up module generates, upgrades, or cancels follow-up tasks based on the target re-examination time, the latest re-examination time, and the node status in the re-examination node instance; after the node status migration is completed, the periodic feedback module receives the re-examination completion record and the current spinal visual measurement record, and generates the next periodic re-examination node.
[0099] The execution receipt record includes a receipt identifier, execution result, associated node, request status version, and receipt validity status. The receipt identifier represents an external execution result; the execution result represents one of the following: reminder sent, reminder confirmed, appointment created, appointment changed, appointment canceled, review completed, or manual processing; the associated node records the node identifier of the corresponding review node instance; the request status version records the node status version read when the external execution request was issued; and the receipt validity status indicates whether the necessary fields and source of the execution receipt record meet the status transition conditions.
[0100] When the reservation module sends a reservation request to the medical resource reservation interface, it writes the node identifier and the current status version into the reservation request. After the medical resource reservation interface returns the reservation result, the reservation module generates a medical resource reservation record and converts the reservation result into an execution receipt record. If the reservation is successfully created, the execution result is "Reservation Created"; if the reservation is successfully canceled, the execution result is "Reservation Cancelled"; if the reservation interface returns a failure, the receipt validity status can be set to "Invalid," and a reservation interface failure record is generated. If the reservation interface does not return the requested status version, the reservation module reads the status version saved in the original reservation request and writes it into the execution receipt record.
[0101] When the follow-up module generates a follow-up task, it writes the node identifier, task generation time, task level, execution time, and node status version into the task. After the follow-up task is executed, the message interface or medical terminal returns the result of reminder sending, reminder confirmation, or manual processing; the follow-up module generates an execution receipt record based on the returned result. If the reminder is successfully sent but no confirmation is received, the execution result records the sending status and confirmation status respectively; subsequent overdue level processing reads the execution receipt record of the previous follow-up task, and does not assume that the task has been created as a substitute for the task having received a receipt.
[0102] After receiving the execution receipt record, the node state migration module first queries the node instance for review based on the associated nodes. If no node is found, an associated node exception record is generated. Once a node is found, the module reads the node state and state version of the reviewed node instance; it then matches the requested state version in the execution receipt record with the current state version. If the requested state version is inconsistent with the current state version, a state version inconsistency is generated, while maintaining the node state and state version unchanged. The node state migration module does not overwrite the current node state based on the old version receipt.
[0103] When the requested status version matches the current status version, the node status migration module continues to verify the validity of the receipt and the migration prerequisites. Migration prerequisites consist of the execution result and the current node status; the prerequisite status for an appointment creation result can be "pending review" or "already reminded"; the prerequisite status for an appointment cancellation result is "already scheduled"; the prerequisite status for a review completion result can be "pending review," "already reminded," or "already scheduled"; the prerequisite status for a reminder sending result can be "pending review"; the prerequisite status for a manual processing result is configured according to the corresponding task type. If the current node status does not belong to an allowed prerequisite status, a record indicating that the migration prerequisites are not met is generated.
[0104] When the request status version is consistent, the receipt status is valid, and the preconditions for migration are met, the node status migration module performs status migration based on the execution result. A reservation creation result migrates the node status to "Reserved"; a reservation cancellation result migrates the node status to "Pending Review"; a valid reminder sent result migrates the node status to "Reminded"; and a review completed result migrates the node status to "Completed". After each migration, the status version is updated, and a status migration record is generated. The status migration record includes the status before migration, the status after migration, the status version before migration, the status version after migration, the receipt identifier, the migration time, and the migration result.
[0105] The node state migration module queries existing state migration records based on the receipt identifier. If a state migration record corresponding to the receipt identifier already exists, it returns the existing state migration record, keeping the node state and state version unchanged. If the same receipt is submitted repeatedly by the same appointment interface or review terminal, the state migration is not executed repeatedly. If the receipt identifiers are different but the execution results and associated nodes are the same, the node state migration module still verifies them separately according to the requested state version and migration preconditions, avoiding directly merging different execution processes.
[0106] The follow-up module reads the re-examination node instances according to the preset examination cycle. When the current time reaches the target re-examination time and the node status has not migrated to "appointed" or "completed," the follow-up module generates a follow-up task associated with the node identifier. When the current time has not yet reached the target re-examination time, the follow-up module does not generate an overdue follow-up task; when the effective symptom change event in S300 has advanced the target re-examination time, the follow-up module reads the updated target re-examination time, instead of reading the time before the adjustment.
[0107] When the current time exceeds the latest follow-up time, the follow-up module determines the overdue level based on the duration of the overdue period. The time range corresponding to the overdue level is stored in the follow-up task conditions of the current target rule version. In one implementation, the overdue levels are divided into Level 1, Level 2, and Level 3, each level corresponding to an overdue time range and a task execution method. The specific task execution method can be message sending, telephone task, or medical terminal task; the task execution method does not change the association between the overdue level and the execution receipt record.
[0108] Before generating a follow-up task for the next level, the follow-up module queries the execution receipt records of the previous level's follow-up task. If the previous level's follow-up task has not received a target execution receipt, the current time has already entered the time range corresponding to the next overdue level, and the node status is still "pending review" or "already reminded," then a follow-up task for the next level is generated. If the previous level's follow-up task has already received an execution receipt record corresponding to appointment confirmation or review completion, then a follow-up task for the next level is not generated. If the previous level's follow-up task has a successful delivery receipt but no confirmation receipt, the follow-up module decides whether to proceed to the next level according to the upgrade conditions in the target rule version, and does not directly consider successful delivery as the node having been processed.
[0109] When a node's status migrates to "Scheduled" or "Completed," the follow-up module queries the follow-up tasks associated with the node identifier that are currently in an "Inactive" state and updates these tasks to a "Cancelled" state. If an ongoing follow-up task has already generated an execution receipt record, that record is retained, and the node's status change time is written into the task record. When a node migrates from "Scheduled" back to "Pending Review," the follow-up module recalculates the execution time of subsequent tasks based on the updated review time window. It does not restore cancelled follow-up tasks but instead generates new task records.
[0110] In one specific implementation, the status version of the review node instance N2001 is 3, and the node status is "Pending Review". When the reservation module issues a reservation request, it writes the request status version 3 into the request. The reservation interface returns a reservation creation success receipt R4001. The node status migration module reads that the current status version is still 3, and the "Pending Review" status meets the migration prerequisites for reservation creation. It then migrates the node status to "Reserved", updates the status version to 4, and generates a status migration record M4001. Subsequently, the old reservation cancellation receipt R4000 arrives. R4000 carries a request status version 2, which is inconsistent with the current status version 4. The node status migration module generates a status with inconsistent status versions, keeping the "Reserved" status and status version 4 unchanged.
[0111] After the review is completed, the visual measurement terminal or medical terminal submits a review completion record. The review completion record includes a completion event identifier, completion time, source node identifier, and the identifier of this spinal visual measurement record. The periodic feedback module first queries the review node instance based on the source node identifier, and then reads the completion event identifier and the identifier of this spinal visual measurement record. If the source node identifier of the review completion record is inconsistent with the associated node in the execution receipt record, a review completion data inconsistency status is generated, and the current node is not closed.
[0112] The periodic feedback module reads the current spinal visual measurement record and performs verification according to the data integrity, data quality status, measurement version, and record validity period in S100. When the review completion record is complete and the visual measurement validity status of the current spinal visual measurement record is valid, the node status migration module migrates the node status to "completed". When the current spinal visual measurement record is unavailable or the review completion record lacks a completion event identifier, the node status is updated to "abnormally suspended", generating a review completion data incomplete status, and no next periodic review node is generated.
[0113] Once the node status migration to "completed," the periodic feedback module queries the next periodic review node based on the completion event identifier and the source node identifier. The query objects include the node source association record and already generated review node instances; when a corresponding next period review node is found, it is returned without recreating it. If the completion interface repeatedly submits the same completion event due to network retries, the periodic feedback module returns the same next period review node based on the completion event identifier and the source node identifier.
[0114] If no corresponding next-cycle follow-up node is found, the cycle feedback module updates the assessment context record based on the current spinal visual measurement record. The update process includes reading the scoliosis severity range, measurement time, and measurement version from the current spinal visual measurement record; reading the currently valid patient stage record; reading the treatment intervention records that were in effect when the current node was closed; using the current measurement time as the new assessment time, and re-determining the target rule version based on the effective time range of the follow-up rule record. The original target rule version, which remains unchanged within the current follow-up cycle, is retained in the node source association record; the new target rule version is written to the updated assessment context record.
[0115] When a treatment intervention record is changed during the current review period, S300 generates a trigger event record with the changed treatment intervention record and adjusts the current review time window according to the original target rule version. After the current node is closed, the periodic feedback module writes the changed treatment intervention record into the updated assessment context record. The updated assessment context record no longer uses the treatment intervention record in the original node; the periodic feedback module determines the target rule version corresponding to the next periodic review node based on the new assessment time and the effective time interval of the review rule record.
[0116] After the updated assessment context record is generated, the periodic feedback module, following the review rule condition matching process of S200, reads the basic follow-up interval, allowable advance, and allowable delay corresponding to the new target rule version; generates a new earliest review time, target review time, and latest review time; and generates the next periodic review node from the new review time window. The next periodic review node has a new node identifier, node status, and initial status version, and saves the updated assessment context record identifier and the new target rule version respectively.
[0117] After the periodic feedback module generates the next periodic review node, it binds the source node identifier, completion event identifier, updated evaluation context record, and the next periodic review node to generate a node source association record. The node source association record includes the source node identifier, completion event identifier, updated evaluation context record identifier, next periodic review node identifier, original rule version, new target rule version, and generation time. The current review node is updated to a closed state after the node source association record is generated; the state transition record corresponding to the completed state is retained, and the closed state record indicates the end of the current period.
[0118] In one specific implementation, the review terminal submits a completion event F4001 and the current spinal visual measurement record V4001 to node N2001. The periodic feedback module queries the successor node based on F4001 and N2001, but finds no results. The data quality status of V4001 is available, and the measurement version is V4. The periodic feedback module reads the current patient stage record and the changed treatment intervention record, generating an updated assessment context record C4001. It matches the assessment time of C4001 according to the assessment time matching rule version R2026-02, and generates the next periodic review node N4001 according to R2026-02. Finally, it binds N2001, F4001, C4001, and N4001 to form a node source association record L4001. When the completion event F4001 arrives again, the periodic feedback module queries L4001 and N4001, returns N4001, and does not generate a new successor node.
[0119] In another implementation, the review completion record has arrived, but the data quality status of this spinal visual measurement record is unavailable. The periodic feedback module updates the current node to an abnormal pending state and saves the completion event identifier and the unavailable measurement record identifier. After the visual measurement terminal resubmits a valid spinal visual measurement record corresponding to the same review, the periodic feedback module verifies the review completion record and the new measurement record again. If the verification passes, the subsequent processing of updating the evaluation context record and generating the next periodic review node resumes, and no subsequent node is generated based on the unavailable record.
[0120] After the above processing, the next cycle review node re-enters the trigger event processing procedure described in S300; the medical server receives new time data, symptom change data, and phased assessment data according to the earliest review time, target review time, latest review time, node status, status version, and new target rule version in the next cycle review node. The spinal visual measurement records, node adjustment records, status transition records, review completion records, and node source association records formed in the current cycle continue to be saved, and the correspondence between the previous and next cycles is maintained through the source node identifier and the next cycle review node identifier.
[0121] Example 2: Figure 2 A structural block diagram of a visual measurement and localization method for human scoliosis according to an embodiment of the present invention is shown. Figure 2 As shown, the structure may include:
[0122] The assessment context generation module 01 is used to acquire spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records; verify the validity and measurement version of the spinal visual measurement records; determine the target rule version according to the assessment time; and bind the patient stage records, treatment intervention records, measurement versions, and target rule versions to generate assessment context records. Specifically, the assessment context generation module receives the spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records. The spinal visual measurement records include subject identification, spinal key point localization results, Cobb angle measurement results, scoliosis severity range, measurement time, measurement version, data quality status, and record validity period. The patient stage records include the subject identification, patient stage, record time, and validity status. The treatment intervention records include the subject identification, treatment intervention method, effective time, and validity status. The follow-up rule records include follow-up rule conditions, basic follow-up interval, allowable advance, allowable delay, effective time range, and rule version. The assessment context generation module associates the spinal visual measurement record, the patient stage record, and the treatment intervention record with the subject identifier; it performs integrity checks on the subject identifier, spinal key point localization results, Cobb angle measurement results, measurement time, measurement version, and data quality status in the spinal visual measurement record; when the data quality status is valid and the assessment time is within the record's validity period, the spinal visual measurement record is marked as valid. The assessment context generation module reads the measurement version and verifies whether the spinal key point localization results, the Cobb angle measurement results, and the scoliosis severity interval correspond to the same measurement version; if the measurement versions are inconsistent, the assessment context record is not generated, and the original measurement version of the spinal visual measurement record is retained. The assessment context generation module matches the assessment time with the effective time interval of each review rule record, and determines the rule version whose effective time interval includes the assessment time as the target rule version; when multiple matching results exist, a target rule version is determined according to the rule version order recorded in the review rule record; when no matching result exists, the assessment context record is not transmitted to the review node generation module. After successful verification, the assessment context generation module writes the subject identifier, the patient stage record, the treatment intervention record, the measurement version, the assessment time, and the target rule version into the same assessment context record, and saves the association between the spinal visual measurement record and the assessment context record; the assessment context generation module provides the assessment context record to the review node generation module, and the patient stage record, the treatment intervention record, the assessment time, and the target rule version serve as inputs for review rule condition matching.
[0123] The review node generation module 02, connected to the assessment context generation module, is used to generate review time windows and review node instances with status versions based on the assessment context records and matching review rule conditions. Specifically, the review node generation module receives the assessment context records output by the assessment context generation module and reads the corresponding review rule records according to the target rule version in the assessment context records. The review node generation module reads the scoliosis severity interval, patient stage record, and treatment intervention record from the assessment context records and matches the scoliosis severity interval, patient stage record, and treatment intervention record with the review rule conditions corresponding to the target rule version, respectively. When all three conditions are met, the review node generation module reads the basic follow-up time interval, allowable advance, and allowable delay from the review rule records. When multiple review rule records meet the conditions, one review rule record is selected according to the priority recorded in the review rule records. When no review rule record meets the conditions, the review node instance is not generated. The review node generation module adds the assessment time to the basic follow-up time interval to generate a target review time; subtracts the allowable advance from the target review time to generate the earliest review time; adds the target review time to the allowable delay to generate the latest review time; and forms the review time window by the earliest review time, the target review time, and the latest review time. If the earliest review time is later than the target review time, or the target review time is later than the latest review time, the review node generation module does not generate the review node instance but retains the review rule record and the corresponding assessment context record. The review node generation module generates the review node instance based on the review time window; the review node instance includes a node identifier, a subject identifier, the earliest review time, the target review time, the latest review time, a node status, a status version, an assessment context record identifier, and a rule version; the node status is set to pending review during generation, the status version is set to the initial status version, and the assessment context record identifier and the target rule version are written into the review node instance. After the review node instance is generated, the target rule version remains unchanged within the review period corresponding to the review node instance. When the review rule record changes version, the current review node instance still calls its bound target rule version. The review node generation module provides the review node instance to the trigger event processing module; the node identifier, the review time window, the node status, the status version, and the target rule version serve as inputs for trigger event record generation and conflict resolution; the review node instance also retains its association with the evaluation context record, which is read by the periodic feedback module after the current node is closed.
[0124] The trigger event processing module 03, connected to the review node generation module, is used to generate trigger event records based on the review node instance, using time data, symptom change data, and phased assessment data. It determines the data age by the event occurrence time and event reception time, verifies the duplication status of event identifiers, and performs conflict resolution on multiple valid trigger event records for the same node according to priority, mutual exclusion, and adjustment boundaries, generating a node adjustment record. Specifically, the trigger event processing module receives the review node instance output by the review node generation module and receives time data, symptom change data, and phased assessment data corresponding to the subject identifier. The time data includes the current time, event occurrence time, and associated node; the symptom change data includes the subject identifier, symptom type, symptom severity, event occurrence time, and event reception time; the phased assessment data includes the current spinal visual measurement record, the previous spinal visual measurement record, assessment time, direction of change, and data quality status. The trigger event processing module queries the re-examination node instances that are in a pending, reminded, or scheduled state based on the subject identifier, and writes the found node identifiers into the associated nodes; if no re-examination node instance is found, no trigger event record is generated for the current node. The trigger event processing module encapsulates the time data, the symptom change data, and the phase assessment data into trigger event records respectively; the trigger event record includes an event identifier, event type, event occurrence time, event reception time, data source, associated nodes, and validity status. The event type is set according to the input object; the event identifier is formed by the original record identifier corresponding to the input object and the associated nodes; the data source records the source of the time data, the symptom change data, or the phase assessment data. The trigger event processing module determines the data age by the difference between the event reception time and the event occurrence time; if the data age is within the data validity period corresponding to the target rule version, and the node status of the re-examination node instance meets the event application conditions, the validity status is set to valid; if the data age exceeds the data validity period, the validity status is set to invalid, and the trigger event record is not used to update the re-examination time window. The trigger event processing module verifies the duplicate status using the event identifier and the associated node. If a trigger event record with the same event identifier and associated node already exists, the newly received trigger event record is marked as duplicate, and the existing trigger event record is returned. The duplicate trigger event record does not participate in conflict resolution again. When the treatment intervention record is changed, the trigger event processing module generates a trigger event record based on the fields of the trigger event record, and determines its event type, validity status, and adjustment direction according to the target rule version bound to the current review node instance.The trigger event processing module assigns valid trigger event records to adjustment directions of advance, maintenance, or postponement based on event type. When only one valid trigger event record exists for the same associated node, a candidate review time window is generated according to the adjustment direction corresponding to that trigger event record. When multiple valid trigger event records exist for the same associated node, they are sorted according to the priority recorded in the target rule version. When multiple valid trigger event records are mutually exclusive, the trigger event record with higher priority is used to form the adjustment direction. When multiple valid trigger event records are not mutually exclusive, an event sequence is formed according to the event occurrence time and event reception time, and the trigger event record participating in this adjustment is determined based on the event sequence. The trigger event processing module uses the earliest and latest review times in the current review node instance as adjustment boundaries; the target review time formed by the advance direction must not be earlier than the earliest review time, and the target review time formed by the postponement direction must not be later than the latest review time. After the conflict resolution is completed, the trigger event processing module generates a node adjustment record. This record includes the event identifiers involved in the conflict resolution, a pre-adjustment review time window, a post-adjustment review time window, and the adjustment direction, and is written with the node identifier of the reviewed node instance. The trigger event processing module then transmits the node adjustment record and the updated reviewed node instance to the node state transition module. The node state, the state version, the updated target review time, and the updated latest review time serve as inputs for the execution receipt record verification and state transition.
[0125] The node state migration module 04, connected to the trigger event processing module, is used to receive an execution receipt record carrying a request state version. When the request state version matches the current state version and the migration preconditions are met, state migration is performed, generating a state migration record. Specifically, the node state migration module receives the review node instance and node adjustment record output by the trigger event processing module, and receives the execution receipt record. The execution receipt record includes a receipt identifier, execution result, associated node, request state version, and receipt validity status. The execution result includes the results corresponding to reminder sending, reminder confirmation, appointment creation, appointment cancellation, and review completion. The request state version is the state version read from the review node instance when the corresponding execution request is generated. The node state migration module queries the review node instance based on the associated node and reads the node state and state version of the review node instance. If the review node instance is not found, state migration is not performed. The node state migration module matches the request state version with the current state version. If they are inconsistent, the node state and state version remain unchanged; if they are consistent, the receipt validity status and migration preconditions are further verified. The migration prerequisites are formed by the correspondence between the execution result and the current node status. When the execution result is appointment creation, the current node status is pending review or reminded; when the execution result is appointment cancellation, the current node status is booked; when the execution result is review completion, the current node status is pending review, reminded, or booked. When the request status version is consistent with the status version, the receipt validity status is valid, and the node status meets the migration prerequisites, the node status migration module updates the node status according to the execution result; appointment creation corresponds to the booked status, appointment cancellation corresponds to the pending review status, reminder sending corresponds to the reminded status, and review completion corresponds to the completed status. After the node status is updated, the node status migration module updates the status version and generates a status migration record; the status migration record includes the pre-migration status, post-migration status, pre-migration status version, post-migration status version, receipt identifier, migration time, and migration result. The node status migration module queries existing status migration records based on the receipt identifier. If a status migration record corresponding to the receipt identifier already exists, the existing status migration record is returned, and the node status and status version are not updated repeatedly. When the current time reaches the target review time and the node status has not migrated to "appointed" or "completed," the node status migration module generates a follow-up task corresponding to the execution receipt record based on the review node instance. When the current time exceeds the latest review time, an overdue level is formed based on the overdue duration, and the execution receipt record of the previous follow-up task is queried. If no corresponding execution receipt record is obtained and the node status is still "pending review," a follow-up task corresponding to the next overdue level is generated.When the node status migrates to "Scheduled" or "Completed," any follow-up tasks associated with the node identifier that have not yet been executed are cancelled. The node status migration module transmits the review node instance that has migrated to the "Completed" status, the corresponding status migration record, and the execution receipt record to the periodic feedback module; the node identifier, status version, and evaluation context record identifier of the review node instance serve as inputs for querying and generating review nodes in the next period.
[0126] The periodic feedback module 05, connected to the node state transition module, is used to receive the review completion record, query the next periodic review node based on the completion event identifier and the source node identifier, update the evaluation context record and close the review node instance if the next periodic review node does not exist, and generate the next periodic review node and node source association record. Specifically, the periodic feedback module receives the completed review node instance and state transition record output by the node state transition module, and receives the review completion record; the review completion record includes the completion event identifier, completion time, source node identifier, and the identifier of this spinal visual measurement record. The periodic feedback module queries the review node instance based on the source node identifier and associates the completion event identifier, the source node identifier, and the identifier of this spinal visual measurement record with the review node instance; if the source node identifier is inconsistent with the node identifier of the review node instance, the review node instance is not closed. The periodic feedback module reads the current spinal visual measurement record and verifies it according to the data integrity, data quality status, record validity period, and measurement version verification methods adopted by the assessment context generation module. If the current spinal visual measurement record fails verification, the review node instance remains in a completed state, and the next periodic review node is not generated. The periodic feedback module queries the already generated next periodic review node using the completion event identifier and the source node identifier. When the next periodic review node is found, it is returned without generating a new one. If the next periodic review node is not found, the periodic feedback module reads the scoliosis severity range, measurement time, and measurement version from the current spinal visual measurement record, and reads the patient stage record and currently effective treatment intervention record corresponding to the subject identifier. The measurement time is used as the new assessment time, and the target rule version is redefined according to the effective time range of the review rule record. The patient stage record, the treatment intervention record, the measurement version, and the redefined target rule version are bound together to generate an updated assessment context record. When the treatment intervention record changes during the current follow-up period, the periodic feedback module writes the changed treatment intervention record into the updated assessment context record. The original target rule version bound to the current follow-up node instance is retained in the follow-up node instance and is not written into the next period's follow-up node as the current rule version. The periodic feedback module matches the follow-up rule conditions based on the updated assessment context record, reads the basic follow-up time interval, the allowable advance amount, and the allowable delay amount; generates the earliest follow-up time, the target follow-up time, and the latest follow-up time for the next period; a new follow-up time window is formed by the earliest follow-up time, the target follow-up time, and the latest follow-up time, and the next period's follow-up node is generated.The next cycle review node includes a new node identifier, subject identifier, review time window, node status, status version, updated assessment context record identifier, and redefined target rule version; the node status is set to pending review, and the status version is set to the initial status version. The cycle feedback module binds the source node identifier, the completion event identifier, the updated assessment context record, and the next cycle review node to generate a node source association record; the node source association record includes the source node identifier, the completion event identifier, the updated assessment context record identifier, the next cycle review node identifier, and the target rule version. After the node source association record is generated, the cycle feedback module updates the review node instance from the completed state to the closed state; the next cycle review node is passed to the trigger event processing module as an associated node corresponding to subsequent time data, symptom change data, and phased assessment data; the updated assessment context record retains its association with the next cycle review node for use by the review node generation module and the cycle feedback module in subsequent review cycles.
Claims
1. A visual measurement and localization method for human scoliosis, characterized in that, include: S100, Obtain spinal visual measurement records, patient stage records, treatment intervention records, and follow-up rule records; Verify the validity and measurement version of the spinal visual measurement records, determine the target rule version according to the assessment time, and bind the patient stage records, treatment intervention records, measurement versions and target rule versions to generate assessment context records; S200. Based on the evaluation context record matching review rule conditions, generate a review time window and a review node instance with a status version; S300. Based on the aforementioned review node instance, generate a trigger event record by combining time data, symptom change data, and phased assessment data; The age of the data is determined by the time the event occurs and the time the event is received. The duplicate status of the event identifier is checked. For multiple valid trigger event records of the same node, conflict resolution is performed according to priority, mutual exclusion relationship and adjustment boundary, and node adjustment record is generated. S400: Receive the execution receipt record carrying the requested status version; perform state migration when the requested status version is consistent with the status version and the migration prerequisites are met. Upon receiving the review completion record, query the next cycle review node based on the completion event identifier and the source node identifier. If the node does not exist, update the evaluation context record, close the node, and generate the next cycle review node and node source association record.
2. The method according to claim 1, characterized in that, The spinal visual measurement record includes subject identification, spinal key point localization results, Cobb angle measurement results, scoliosis severity range, measurement time, measurement version, data quality status, and record validity period; The verification of the validity of the spinal visual measurement records includes verifying the data integrity, data quality status, and record validity period of the spinal visual measurement records. When the verification passes, a valid visual measurement status is generated. The assessment context record includes subject identification, patient stage record, treatment intervention record, measurement version, assessment time, and target rule version.
3. The method according to claim 1, characterized in that, The review rule record includes the review rule conditions, basic follow-up interval, allowable advance, allowable delay, effective time interval, and rule version; Match the evaluation time with the effective time interval, and determine the rule version that includes the evaluation time as the target rule version; The target re-examination time is obtained by adding the assessment time to the basic follow-up time interval. The earliest re-examination time is obtained by subtracting the allowable advance from the target re-examination time. The latest re-examination time is obtained by adding the target re-examination time to the allowable delay. The re-examination time window is generated by the earliest re-examination time, the target re-examination time, and the latest re-examination time.
4. The method according to claim 1, characterized in that, The re-examination node instance includes node identifier, subject identifier, earliest re-examination time, target re-examination time, latest re-examination time, node status, status version, assessment context record identifier, and rule version; When generating the review node instance, the node status is set to pending review, the status version is set to the initial status version, and the evaluation context record identifier and the target rule version are written into the review node instance.
5. The method according to claim 1, characterized in that, The trigger event record includes event identifier, event type, event occurrence time, event reception time, data source, associated node, and valid status; The age of the data is determined based on the difference between the event reception time and the event occurrence time; When the data age is within the data validity period and the node status of the associated node meets the event application conditions, the validity status is set to valid; The duplicate status is verified based on the event identifier and associated node. If a trigger event record with the same event identifier and associated node already exists, the newly received trigger event record is determined to be a duplicate event.
6. The method according to claim 5, characterized in that, When the same associated node corresponds to multiple valid trigger event records, the adjustment direction of advancing, maintaining, or delaying is determined according to the event type. Conflict adjudication is performed on different adjustment directions based on the priority, mutual exclusion relationship and event sequence, and the earliest review time, target review time and latest review time after adjustment are limited according to the adjustment boundary; The node adjustment record includes the event identifiers involved in conflict adjudication, the pre-adjustment review time window, the post-adjustment review time window, and the adjustment direction.
7. The method according to claim 1, characterized in that, The execution receipt record includes a receipt identifier, execution result, associated node, request status version, and receipt validity status; When the request status version is consistent with the status version of the review node instance, the receipt is valid, and the node status meets the migration prerequisites, the status migration is performed according to the execution result, the status version is updated, and a status migration record is generated. If a state transition record corresponding to the receipt identifier already exists, return the state transition record while keeping the node state and state version unchanged; When the requested state version is inconsistent with the state version, a state version inconsistency is generated.
8. The method according to claim 1, characterized in that, When the current time reaches the target review time and the node status has not migrated to scheduled or completed, a follow-up task associated with the node identifier is generated; If the current time exceeds the latest review time, the overdue level shall be determined according to the duration of the overdue review time. When the previous follow-up task has not received a corresponding execution receipt record and the node status is still pending review, the next level follow-up task is generated. When the node status transitions to "reserved" or "completed", the follow-up task associated with the node identifier that has not been executed is cancelled.
9. The method according to claim 1, characterized in that, The review completion record includes the completion event identifier, completion time, source node identifier, and the identifier of this spinal visual measurement record; Query the next cycle review node based on the completed event identifier and the source node identifier; If the next cycle review node is not found, the assessment context record is updated based on the current spinal visual measurement record, the target rule version is re-determined based on the updated assessment context record, and the next cycle review node is generated. When the next cycle review node is found, the found next cycle review node is returned, and the next cycle review node is not generated repeatedly; The source node identifier, completion event identifier, updated evaluation context record, and next cycle review node are bound together to generate the node source association record.
10. The method according to claim 3, characterized in that, After the review node instance is generated, the target rule version remains unchanged within the review period corresponding to the review node instance. When the treatment intervention record is changed, a trigger event record is generated from the changed treatment intervention record, and a conflict resolution is performed on the current review time window based on the trigger event record; After the current review node is closed, the modified treatment intervention record is written into the updated assessment context record, and the target rule version corresponding to the next cycle review node is determined based on the updated assessment context record.
