A method and system for robust recognition of unconventional dial pointer indication based on geometric constraints and target detection
By training an object detection model using the YOLO framework and combining it with geometric methods, and fitting the center of a circle with small scales, the robustness problem of recognizing the readings of unconventional dial pointers was solved. This approach addresses existing technical issues in railway interlocking equipment, improves recognition accuracy, and meets the requirements for lightweight design and real-time operation.
Patent Information
- Application Number
- CN202510960309.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2045-07-11
AI Technical Summary
Existing intelligent inspection robots suffer from insufficient robustness in fitting the center of the circle when recognizing the readings of unconventional dial pointers, making it difficult to meet the requirements of lightweight deployment and real-time performance. Furthermore, existing algorithms lack sufficient recognition accuracy in complex backgrounds.
The object detection model is trained using the YOLO framework. Combining geometric constraints and maximum likelihood estimation, the center of the circle is fitted by a small scale, and the center fitting is optimized by the weighted least squares method. By integrating object detection and geometric constraints, the problem of non-circular dials and complex backgrounds can be solved, bypassing the challenge of slanted text recognition.
In the scenario of railway interlocking train control equipment dial, the reading recognition error is within ±0.5V when the range is 0-24V, which meets the requirements of lightweight and real-time performance of intelligent inspection robots.
Smart Images

Figure CN120747939B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing applications, and in particular to a robust method and system for recognizing unconventional dial pointer readings based on geometric constraints and target detection. Background Technology
[0002] For mechanical equipment in industries such as railways, power, and oil and gas, maintenance work encompasses many aspects, including inspection, analysis, and judgment. Currently, this type of maintenance work mainly relies on regular manual inspections. However, this traditional method has many drawbacks: low inspection efficiency, difficulty in timely detection of potential hazards, especially in unmanned stations in high-altitude areas, where manual operation faces significant challenges and inconveniences. Therefore, there is an urgent need to replace manual inspections with intelligent inspection robots.
[0003] In the field of intelligent inspection robots, image recognition algorithms are the core technology. However, through in-depth literature review and field investigation, it can be found that most current research on intelligent inspection robots is limited to the level of manually recognizing the collected images after they are transmitted back. There are few research results on detailed functional modules such as the recognition of pointer dial readings.
[0004] After investigation and experimentation, the following problems were identified with existing related algorithms: Most algorithms rely heavily on direct detection of the center of the circle. For the unconventional dial conditions described in this invention, existing algorithms are ineffective and struggle to accurately identify the displayed value. A few algorithms that do not directly detect the center of the circle have insufficient robustness in their center-fitting methods, specifically manifested in small sample sizes and failure to consider erroneous target detection points. Extensive modifications to existing algorithms may result in large algorithm sizes, high computational costs, large storage requirements, and correspondingly high hardware requirements. This makes it difficult to meet the lightweight deployment and real-time requirements of intelligent inspection robots in this specialized scenario.
[0005] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore includes information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0006] The purpose of this application is to provide a robust method and system for recognizing the readings of unconventional dial pointers based on geometric constraints and target detection. This method overcomes, to some extent, the problems of existing technologies by fitting a circle to a sample using small graduations as the center, improving fitting accuracy; integrating target detection and geometric constraints to solve the problems of non-circular dials and complex backgrounds; and bypassing the challenge of recognizing tilted text through angle calculation. In the context of railway interlocking train control equipment dials, it achieves a reading recognition error of ±0.5V across a range of 0-24V, meeting the lightweight and real-time requirements of intelligent inspection robots.
[0007] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part by practice of the invention.
[0008] According to one aspect of this application, a robust recognition method for unconventional watch dial pointer readings based on geometric constraints and object detection is provided, comprising: acquiring image data of unconventional watch dials and a preset watch dial annotation dataset, wherein the preset watch dial annotation dataset includes annotation information of the watch dial and key elements within the watch dial; training an object detection model required for the recognition of the watch dial and key elements within the watch dial using the YOLO framework based on the preset watch dial annotation dataset and the image data of unconventional watch dials; using the trained object detection model to detect and recognize the watch dial, small scale, large scale, pointer, and dimensional letters in the test video data, obtaining their coordinate information, and determining the watch dial range by recognizing the dimensional letters; comparing the position coordinates of different labeled elements to determine the relationship between each watch dial and each watch... The hierarchical and correspondence relationships of key elements within the dial are assigned key-value relationships in the storage dictionary. Based on the center coordinates of all identified small scale detection boxes, the probability method of maximum likelihood estimation is used to evaluate candidate circle parameters, remove abnormal detection points, and generate initial circle parameters. Based on the above initial circle parameters, the center of the selected normal detection points is fitted using the weighted least squares method to generate the coordinates of the fitted circle center. All obtained scales are sorted by x-coordinate, and the center coordinates of the detection boxes of the last and first large scales, the pointer, and the fitted circle center are used to construct the range line, zero line, and pointer line. The range angle and the reading angle are calculated, and the pointer reading is calculated in combination with the dial range to generate the dial reading recognition result.
[0009] Another aspect of this application discloses a robust recognition device for unconventional dial pointer readings based on geometric constraints and object detection, characterized by comprising: an acquisition module for acquiring image data of unconventional dials and a preset dial annotation dataset, wherein the preset dial annotation dataset includes annotation information of the dial and key elements within the dial; a processing module for training an object detection model required for recognizing the dial and key elements within the dial using the YOLO framework based on the preset dial annotation dataset and the image data of unconventional dials; using the trained object detection model to detect and recognize the dial, small scale, large scale, pointer, and dimensional letters in the test video data, obtaining their coordinate information, and determining the dial range by recognizing the dimensional letters; and comparing the position coordinates of different labeled elements. The process involves determining the hierarchical and correspondence relationships between each dial and its key elements, assigning key-value relationships to them in a storage dictionary. Based on the center coordinates of all identified small scale detection boxes, the maximum likelihood estimation method is used to evaluate candidate circle parameters, remove abnormal detection points, and generate initial circle parameters. Based on these initial circle parameters, a weighted least squares method is used to fit the center of the selected normal detection points to generate the coordinates of the fitted circle center. All acquired scales are sorted by their x-coordinates, and the coordinates of the detection box center of the last-ranked large scale, the first-ranked large scale, the pointer, and the fitted circle center are used to construct the range line, zero line, and pointer line. The range angle and the reading angle are calculated, and the pointer reading is calculated by combining the dial range to generate the dial reading recognition result.
[0010] According to another aspect of this application, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a second processor, implements the above-described robust recognition method for unconventional dial pointer readings based on geometric constraints and target detection.
[0011] This application presents a robust method and system for recognizing unconventional dial and pointer readings based on geometric constraints and object detection. It utilizes the YOLO framework to train an object detection model, recognizing the dial, small scale, large scale, pointer, and dimensional letters, and obtaining their coordinates. The range is determined by the dimensional letters. Element coordinates are compared to determine hierarchical relationships, constructing a key-value mapping. Outliers are removed using overdetermined equations, Huber loss, and a probability model based on the center coordinates of the small scale, combined with weighted least squares optimization to fit the circle center. The large and small scales are sorted by their x-coordinates, constructing range lines, zero-point lines, and pointer lines. The included angle is calculated and combined with the range to derive the reading. Using the small scale as a sample to fit the circle center improves fitting accuracy; object detection and geometric constraints are integrated to address issues with non-circular dials and complex backgrounds; and angle calculation bypasses the challenge of recognizing tilted text.
[0012] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0013] Figure 1 This document illustrates a flowchart of a robust identification method for unconventional dial pointer readings based on geometric constraints and target detection, provided in an embodiment of this application.
[0014] Figure 2 An example diagram of a partially harsh condition dial provided in one embodiment of this application is shown;
[0015] Figure 3 A schematic diagram of the structure of an unconventional dial pointer reading robust recognition device based on geometric constraints and target detection, provided in an embodiment of this application, is shown. Detailed Implementation
[0016] The preferred embodiments of the present invention will be described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.
[0017] The following is combined Figure 1 This application describes a robust method for recognizing unconventional dial pointer readings based on geometric constraints and object detection, according to exemplary embodiments thereof. In one embodiment, this application also proposes a robust method and system for recognizing unconventional dial pointer readings based on geometric constraints and object detection. Figure 1 As shown:
[0018] S101, acquire image data of unconventional watch faces and preset watch face annotation dataset.
[0019] In one implementation, image data is acquired to characterize unconventional dials with specific complex features. This image data needs to clearly represent the actual appearance of unconventional dials in machinery rooms of industries such as railways, power, and oil and gas, to meet the requirements of subsequent algorithm training and recognition. Figure 2 As shown, in the railway interlocking train control equipment room, a high-definition camera mounted on an intelligent inspection robot captures images of the railway interlocking train control equipment dial. The dial is similar in color to the background and the boundary is unclear. The dial shape is not circular, the pointers are thin and light-colored, and the distinction between the dial and the background is small. The dial lines and background are complex, and the font of the scale values is small and tilted.
[0020] The main color of the dial is light gray, with a dark gray control panel as the background; the color difference between the two is less than 15 grayscale values. The dial is oval-shaped, with a major axis length of 80 pixels and a minor axis length of 60 pixels. The hands are only 2 pixels wide and are light red (RGB values 200, 100, 100). The background contains lines of a similar color (RGB values 190, 110, 110), resulting in a color contrast ratio less than 1:1.5. In addition to the hour markers, the dial features crisscrossing lines and markings, with a line density of 15 lines per square centimeter. The font height of the hour markers is only 3 pixels, and the font tilt angle is approximately 15 degrees.
[0021] Obtain a pre-defined watch face annotation dataset containing annotation information for the watch face and its key elements. The annotation information must accurately reflect the position and category of each element in the image to provide accurate supervision signals for the training of the object detection model. Use the LabelImg annotation tool to annotate the acquired unconventional watch face images. The annotation content is as follows: Watch face annotation: Select the watch face area in the image, label the category as "watch face", with the upper left corner coordinates as (100, 100) and the lower right corner coordinates as (500, 500). Small scale annotation: Circle the small scale within the watch face, label the category as "small scale", and the center coordinates of each small scale detection box are (150, 200), (160, 205), (170, 210), etc. Large scale annotation: Circle the large scale, label the category as "large scale", and the center coordinates are (200, 150), (300, 150), (400, 150), etc. Pointer Label: Select the pointer, label the type as "Pointer", and center the detection box at (250, 250). Dimensional Letter Label: Circle the dimensional letter "V" at the center of the dial, label the type as "Dimensional Letter", and center the letter at (250, 200).
[0022] S102, based on the preset dial annotation dataset and image data of unconventional dials, uses the YOLO framework to train the target detection model required for the recognition of dials and key elements within the dials.
[0023] In one implementation, data cleaning and preprocessing are performed on a preset dial annotation dataset and image data from unconventional dials to generate preprocessed data. The preprocessed data includes image denoising and normalization, and format standardization and error correction of the annotation information. For image denoising, the dial images of railway interlocking train control equipment are subject to salt-and-pepper noise due to interference from engine room lighting. A median filtering algorithm is used, traversing the image pixels in a 3×3 window, sorting the pixel values within the window, and replacing the center pixel with the median value. This reduces the number of isolated noise points (pixels with a grayscale value of 255) in the original image to less than 3, and reduces the dial edge blur by 15%.
[0024] Image normalization processing is performed on images of power meter dials, where different shooting angles cause brightness differences. The image pixel values are linearly mapped from [0,255] to [0,1] and then standardized to achieve a pixel mean of 0 and a standard deviation of 1. For example, a pixel with an original value of 180 has a normalized value of 0.706 and a standardized value of (0.706-0.5) / 0.2 = 1.03.
[0025] The format of annotation information is standardized, addressing the discrepancies in annotation file formats generated by different annotators. PASCALVOC format XML files are now standardized to COCO format JSON, tag names are standardized, incorrect annotations such as "dial_scale" are corrected to "small_scale," and inconsistencies in tag capitalization are fixed in 15% of the annotation files.
[0026] The annotation information was corrected by manually reviewing the pointer detection box for offset. The Intersection over Union (IoU) was used to check the offset, and the annotation was re-marked when the IoU was less than 0.7. The original pointer annotation box had the top left corner (250, 250) and the bottom right corner (260, 300), but the actual pointer center should be (255, 275). After correction, the detection box is (250, 270) - (260, 280).
[0027] A network structure for an object detection model is constructed based on the YOLO framework, generating an initial model framework. This initial framework includes a backbone network, a neck network, and a head network. The backbone network extracts image features, the neck network performs feature fusion, and the head network handles object classification and localization. The network structure is built based on the YOLO framework, dividing it into different functional modules to achieve feature extraction and object detection. The backbone network uses CSPDarknet53 as its core, containing five residual blocks. An input 640×480 dial image, after passing through the third residual block, outputs a 160×120×256 feature map, which can extract semantic features such as the dial's elliptical contour. The neck network employs an FPN+PAN structure, combining upsampling and downsampling to achieve multi-scale feature fusion. The 160×120×256 feature map is upsampled to 320×240×128 and concatenated with the shallow 28×28×512 feature map to form a fused feature map of 320×240×640, enhancing the small-scale recognition capability. The head network construction includes a classification head and a regression head, which respectively achieve target category prediction and location regression. The classification head uses 1×1 convolution to reduce the number of feature map channels to 5 (corresponding to 5 categories: dial, small scale, large scale, pointer, and dimensional letters). The regression head outputs 4 coordinate values (coordinates of the upper left and lower right corners of the detection box).
[0028] Preprocessed data is input into the initial model framework. The model parameters are iteratively optimized using the backpropagation algorithm and optimizer to generate the model for training. During optimization, the Intersection over Union (IoU) loss function and the class cross-entropy loss function are used to improve the model's detection accuracy for the dial and key elements within it. The model parameters are optimized through backpropagation, and a specific loss function is used to improve detection accuracy. The IoU loss function is applied to optimize the dial detection boxes. The IoU between the predicted detection box and the ground truth box is 0.6, and the IoU loss is 1 - 0.6 = 0.4. During backpropagation, the coordinate prediction parameters are adjusted to improve the IoU to 0.85 in the next prediction round. For example, the original predicted detection box has the coordinates of the top left corner (110,110) and the bottom right corner (490,490), while the real box has the coordinates of the top left corner (100,100) and the bottom right corner (500,500). After loss optimization, the predicted box is adjusted to (105,105) and (495,495), and the overlap area with the real box is significantly increased.
[0029] The cross-entropy loss function is applied for pointer and background classification. For a sample pointer, the classification probability is [0.3, 0.7] (correct label is 1), and the cross-entropy loss is -ln(0.7) = 0.357. After adjusting the classification head parameters, the probability increases to [0.1, 0.9] in the next round. For example, in an image of an electric meter, a thin pointer (1.5 pixels wide) was initially misclassified as background with a probability of 0.3. After optimization, the misclassification probability decreased to 0.1, and the correct classification probability increased. Using the Adam optimizer, with an initial learning rate of 0.001, β1 = 0.9, and β2 = 0.999, the learning rate automatically decays to 0.0001 in the 100th iteration. The model's detection error for the non-circular contour of the railway dial decreased from 12 pixels to less than 5 pixels.
[0030] The trained model was validated and its hyperparameters tuned to generate an object detection model. During validation, a validation set was used to evaluate the model's precision, recall, and mean precision (MSP), and the model's hyperparameters were adjusted based on the validation results. The model's performance was evaluated using the validation set, and hyperparameters were adjusted based on metrics such as precision, recall, and MSP to generate the final object detection model. A validation set of 500 images (containing 2000 labeled elements) of railway interlocking train control equipment dials was selected. This set included 300 images with dial and background colors similar (grayscale difference < 15), 250 images of non-circular dials, and 400 images with thin pointers (width ≤ 2 pixels).
[0031] The model detected 1800 elements, correctly identifying 1650, resulting in a precision of approximately 91.67% (1650 ÷ 1800). For example, when detecting large scale marks, the number of instances where background lines were mistakenly identified as large scale marks was reduced to below 5%. In the validation set, 2000 elements actually existed, and the model correctly identified 1760, resulting in a recall of 88% (1760 ÷ 2000). The recall rate for tilted scale marks (tilt angle 15°-20°) improved from an initial 75% to 85%.
[0032] AP values were calculated for the five target categories (dial, small scale, large scale, pointer, and dimensional letters): Dial AP was 92% (190 dials were correctly detected, out of a total of 200 actual dials); Small scale AP was 89% (1565 small scales were correctly identified, out of a total of 1750 actual small scales); Large scale AP was 90% (342 large scales were correctly identified, out of a total of 380 actual large scales); Pointer AP was 85% (340 pointers were correctly identified, out of a total of 400 actual pointers); and Dimensional Letter AP was 95% (95 dimensional letters were correctly identified, out of a total of 100 actual dimensional letters). The final mAP was u(92% + 89% + 90% + 85% + 95%) ÷ 5 = 90.2%.
[0033] Examples of hyperparameter tuning are as follows:
[0034] Adjustment 1: Batch Size: Setting the batch size to 16 caused a crash during training due to GPU (NVIDIA RTX 3090) memory usage exceeding 24GB. Reducing the batch size to 8 lowered memory usage to 18GB, resulting in stable training. The training iteration speed decreased from 15 steps / minute to 10 steps / minute, but model convergence became more stable, and mAP improved by 1.2%.
[0035] Adjustment 2: AnchorBoxes Size: The default anchorbox aspect ratio is 1:1 (suitable for round dials), which results in poor detection performance for elliptical railway dials (major axis:minor axis ≈ 1.3:1), with an average IoU of only 0.65. Based on the labeled data, anchorboxes with aspect ratios of 1.3:1 and 1.5:1 were generated through re-clustering. The average IoU for dial detection improved to 0.82, and the AP increased from 87% to 92%.
[0036] Adjustment 3: Learning Rate Decay Strategy: With a fixed learning rate of 0.001, accuracy stagnated after 50 training epochs. A cosine decay strategy was adopted, where the learning rate gradually decreased from 0.001 to 0.0001 with each iteration. After 100 training epochs, the accuracy of small-scale detection improved from 85% to 89%, enhancing the model's generalization ability.
[0037] S103 uses a trained target detection model to detect and identify the dial, small scale, large scale, pointer, and dimensional letters in the video data under test, obtain their coordinate information, and determine the dial range by recognizing the characters of the dimensional letters.
[0038] In one implementation, a trained object detection model is used to detect and identify the dial, small scale, large scale, pointer, and dimensional letters in the video data under test, generating coordinate information corresponding to the dial, small scale, large scale, pointer, and dimensional letters. A trained YOLO object detection model is used to locate and classify the dial, small scale, large scale, pointer, and dimensional letters in the video data under test, obtaining the coordinate information of the detection boxes for each type of element. The real-time monitoring video of a railway interlocking train control device has a resolution of 1280×720, a frame rate of 25fps, and the camera is 2 meters away from the dial with a slightly tilted viewing angle (approximately 15°). The model identifies an elliptical dial, with the upper left corner of the detection box at (300, 200) and the lower right corner at (700, 600), labeled as "dial". The dial is actually light gray (RGB:210,210,210), and the background is a dark gray control panel (RGB:190,190,190). The model achieves accurate detection by learning its non-circular contour features (400 pixels on the major axis and 300 pixels on the minor axis).
[0039] The model detects densely distributed small markers on the inner ring of the dial. The average size of the detection box for each small marker is 10×5 pixels. For example, the center coordinates of a small marker are (350, 300), and the label category is "small marker". Due to the large number of small markers (approximately 50), the model accurately distinguishes the markers from the background lines using a feature fusion network. Five large markers are identified, spaced apart along the edge of the dial. One of these large markers has a center coordinate of (500, 250), a detection box size of 20×10 pixels, and the label category is "large marker". A thin hand (2 pixels wide) is detected, with a detection box center coordinate of (450, 400), extending from the center to the edge of the dial, and the label category is "hand". The model avoids confusion with the background lines by learning its color features (light red RGB: 220, 150, 150) and elongated shape features. The dimensional letter "V" was detected at the center of the dial. The center coordinates of the detection box are (450, 350), the size is 30×20 pixels, and the label category is "dimensional letter".
[0040] The system performs text recognition on the detected dimensional letters and generates the dial range based on the recognition results. The prominent dimensional letter at the center of the dial represents the dimension of the physical quantity being monitored by the instrument. Identifying this letter determines the physical quantity and thus the target dial range. Alternatively, the system performs text recognition on the detected dimensional letters and determines the dial range based on the dimension of the physical quantity represented by the letter (e.g., "V" represents voltage). This process is then combined with industry standards or equipment characteristics to generate specific range values.
[0041] The letter "V" at the center of the dial of the aforementioned railway interlocking train control equipment is in Arial font with a 15° tilt and a height of 15 pixels. Using an OCR text recognition module, the "V" within the detection frame was identified with a 98% confidence level, confirming that the dimension is the voltage unit "volt". According to railway equipment specifications, this type of dial is used to monitor 24V DC power supply, and the letter "V" corresponds to the physical quantity of voltage. Combining the equipment nameplate information and the range (0-30V) marked during model training, the dial range was generated as 0-24V. The specific logic is as follows: the letter "V" determines the physical quantity as voltage; the detected large scale intervals on the dial correspond to voltage values. For example, five large scale intervals correspond to 0V, 6V, 12V, 18V, and 24V respectively, therefore the range is 0-24V. If the dimension letter "A" is detected, it is identified as the current unit "Ampere". A power meter dial generates a range of 0-5A by recognizing "A" and combining it with the equipment type (ammeter); if it is "Ω", it is identified as the resistance unit "Ohm", and the range may be 0-100Ω.
[0042] When the watch face in the video appears trapezoidal due to a tilted viewpoint, the model performs a perspective transformation on the coordinates using a geometric constraint algorithm. For example, the tilted watch face detection boxes at the top left (300, 200), top right (720, 180), bottom left (280, 620), and bottom right (700, 600) are corrected to rectangles by calculating a perspective transformation matrix. After correction, the top left (320, 220), top right (680, 220), bottom left (320, 580), and bottom right (680, 580) coordinates ensure that the subsequent coordinate calculations of the scale and hands are based on the orthographic projection viewpoint, avoiding deviations in the range angle calculation caused by the tilted viewpoint. In scenes with complex watch face backgrounds (such as 15 lines per square centimeter), the object detection model enhances feature extraction of the scale and hands through an attention mechanism. For example, when an element's coordinates (400, 350) are detected, the model determines its shape features (a thin bar represents a pointer, and a short straight line represents a scale) and its positional relationship with the dial detection frame (located within the dial) to eliminate interference from background lines and ensure the accuracy of the coordinate information.
[0043] The dial elements in the same video frame are detected multiple times. For example, if the pointer center coordinates are detected in three consecutive frames as (450, 400), (452, 402), and (448, 399), the coordinates are smoothed using a Kalman filter algorithm to obtain the final coordinates (450, 400), reducing detection jitter error. After recognizing the dimensional letter "V" and generating the 0-24V range, the model checks whether the distribution of large scales conforms to the range division. For example, if five large scales are detected, they should be evenly distributed at the 0V, 6V, 12V, 18V, and 24V positions. If the calculated angle value corresponding to a certain large scale coordinate deviates from the theoretical value by more than 5° (e.g., the theoretical angle is 72°, but the actual calculated angle is 78°), the range calibration process is triggered, and the dimensional letter and large scale distribution are re-identified.
[0044] S104. Compare the position coordinates and sizes of different tag elements to determine the subordinate and correspondence relationships between each dial and the key elements within each dial, and assign key-value relationships to them in the storage dictionary.
[0045] In one implementation, the position coordinates of different labeled elements are extracted and compared to generate dial detection box coordinate information and key element detection box coordinate information within the dial. Each type of element detected by the target detection model has a unique label. The detection box coordinates of various elements (dial, small scale, large scale, pointer, dimensional letters) are extracted from the target detection results. Based on the unique label classification, the spatial relationship between the element and the dial is determined by comparing the coordinate values.
[0046] A monitoring image from a railway machine room contains two dials. The target detection model outputs the following results: Dial 1 (Label 0): Detection box coordinates: top left corner (100, 100), bottom right corner (500, 500); Dial 2 (Label 0): Detection box coordinates: top left corner (600, 100), bottom right corner (1000, 500). Large scale (Label 1): Detection box coordinates [(200, 150), (300, 150), (400, 150), (700, 150), (800, 150), (900, 150)]; Pointer (Label 2): Detection box center coordinates [(250, 250), (750, 250)]. Dimensional letter (Label 3): Detection box center coordinates [(250, 200), (750, 200)].
[0047] The coordinate comparison process is as follows: Extract the coordinate range of dial 1: x∈[100,500], y∈[100,500]; extract the coordinate range of dial 2: x∈[600,1000], y∈[100,500]. Compare the large scale coordinates: the x values of (200,150), (300,150), and (400,150) are within [100,500], belonging to dial 1; the x values of (700,150), (800,150), and (900,150) are within [600,1000], belonging to dial 2.
[0048] The coordinate information of the dial detection frame and the coordinate information of the key element detection frames within the dial are analyzed and processed to generate positional dependency feature information between the elements and the dial. The coordinate inclusion relationship between the element detection frame and the dial detection frame is analyzed, and dependency feature parameters (such as whether the center coordinates are within the dial, the overlap area ratio, etc.) are calculated. The dependency feature calculation for the pointer is as follows: Pointer 1 center coordinates (250, 250): It is determined whether (250, 250) satisfies 100 ≤ 250 ≤ 500 and 100 ≤ 250 ≤ 500. The result is yes, it belongs to dial 1. Pointer 2 center coordinates (750, 250): 750 ∈ [600, 1000], it belongs to dial 2.
[0049] The dependency feature of dimensional letters is calculated as follows: the center of dimensional letter 1 (250, 200) lies within the coordinate range of dial 1, and the center of dimensional letter 2 (750, 200) lies within the coordinate range of dial 2. The "dependency" is defined as the IoU value between the element detection box and the dial detection box. A small scale detection box has an IoU of 0.8 (overlap area / union area) with dial 1, indicating a strong dependency relationship; its IoU with dial 2 is 0.1, indicating no relation.
[0050] The positional subordination information of elements and dials is analyzed and processed to generate the correspondence between dials and elements. Based on the subordination analysis results, a clear correspondence is established between each dial and its corresponding element, forming a structured association information of "dial-element type-coordinates". The detection box coordinates of dial 1 are from the upper left corner (100,100) to the lower right corner (500,500). By judging that the coordinates of the large scale (200,150), (300,150), and (400,150) are all within this range, it is determined that these three large scales belong to dial 1. Similarly, the center of the pointer (250,250) and the center of the dimensional letter (250,200) are also within the coordinate range of dial 1, forming a correspondence of "dial 1-large scale / pointer / dimensional letter".
[0051] The detection frame coordinates of dial 2 are from the upper left corner (600,100) to the lower right corner (1000,500). The large scale (700,150), (800,150), (900,150), the center of the pointer (750,250), and the center of the dimensional letter (750,200) are all within this range, forming a correspondence between "dial 2 - large scale / pointer / dimensional letter".
[0052] Based on the correspondence between dials and elements, different labeled elements and dials are marked and matched to generate preliminary key-value pairs. A unique identifier is assigned to each dial, and the corresponding elements are grouped by type to generate a preliminary key-value pair structure of "dial identifier - element list," achieving initial matching between elements and dials. The identifier "Dial_001" is assigned to dial 1, and the identifier "Dial_002" is assigned to dial 2. The large scale coordinate list [(200,150),(300,150),(400,150)], pointer coordinates [(250,250)], and dimensional letter coordinates [(250,200)] corresponding to dial 1 are integrated into an element list, generating a preliminary key-value pair: Dial_001: [large scale coordinate list, pointer coordinates, dimensional letter coordinates]. Similarly, generate the initial key-value pair for dial 2: Dial_002: [List of large scale coordinates (700, 150, etc.), pointer coordinates (750, 250), coordinates of dimensional letters (750, 200)].
[0053] The initial key-value pairs are integrated and validated to generate accurate key-value relationships between dials and elements. These relationships are then assigned to the storage dictionary, with the key being the dial identifier and the value being the corresponding list of elements. Logical validation is performed on the initial key-value pairs (e.g., whether the number of elements matches the dial scale distribution), and abnormal associations are corrected. Finally, accurate key-value mapping relationships are generated in the storage dictionary. For example, the number of large scales on dial 1 should be 5, but the initial matching result only shows 3. Rescanning the image revealed that two other large scale coordinates (150, 200) and (450, 200) were missed due to their small detection boxes. These were manually corrected and added to the element list.
[0054] The center of the pointer on dial 1 (250, 250) should point to the scale area. If, during the initial matching, a pointer coordinate (350, 350) exceeds the dial detection frame, it is considered a mismatch and is discarded. In the storage dictionary, the key "Dial_001" corresponds to a list containing 5 large scale coordinates, 1 pointer coordinate, and 1 dimensional letter coordinate. The key "Dial_002" corresponds to the same value, ensuring that the coordinate information of each element strictly corresponds to its corresponding dial, providing accurate data for subsequent center fitting and reading calculation.
[0055] S105: Based on the center coordinates of all identified small-scale detection boxes, the maximum likelihood estimation probability method is used to evaluate the candidate circle parameters, remove abnormal detection points, and generate initial circle parameters.
[0056] In one implementation, a small-scale detection frame center coordinate acquisition model is used to obtain the center coordinates of all small-scale detection frames. Using the small-scale detection frame coordinates output by the target detection model, the center coordinates of each detection frame are calculated, forming a coordinate set to provide basic data for subsequent circle center fitting. An image of a railway interlocking train control equipment dial is used, and the target detection model identifies 50 small-scale detection frames. Some examples are as follows: Small-scale frame 1: top left corner (150, 200), bottom right corner (160, 210), center coordinates are ((150+160) / 2, (200+210) / 2)=(155, 205); Small-scale frame 2: top left corner (160, 205), bottom right corner (… (170,215), center coordinates (165,210); small scale 3 detection box: top left corner (170,210), bottom right corner (180,220), center coordinates (175,215); the obtained center coordinates of the 50 small scales are represented as [(155,205),(165,210),(175,215),...,(x_n,y_n)], forming the fitted sample set.
[0057] Using a regularized solution model for overdetermined equations, k points are randomly selected each time to establish and solve an overdetermined system of equations to obtain the parameters of the candidate circle. K points are randomly selected from the sample set to construct an overdetermined system of equations, and the center (a, b) and radius r of the candidate circle are obtained through regularization. K = 4 points are randomly selected from the coordinates of 50 small scale centers, with coordinates: (155, 205), (165, 210), (175, 215), (200, 150), (300, 150), (400, 150). The overdetermined system of equations is as follows: Solving for candidate parameters: We obtain parameters D = -500, E = -400, F = 10000. Therefore, the center coordinates are a = -D / 2 = 250, b = -E / 2 = 200, and the radius is...
[0058]
[0059] For each generated candidate circle parameter, calculate the Euclidean distance δ from all points to the candidate circle. i And calculate its Huber loss, where c is the threshold for normal detection points; For each small tick mark center coordinate, calculate its distance to the candidate circle. Based on the comparison of the distance with a threshold c, calculate the Huber loss to evaluate outliers. The small tick mark center is chosen as (155, 205). Candidate circle parameters are (a = 250, b = 200, r ≈ 304.14), and the Euclidean distance is... Let the threshold c = 50, since δ i =75.8>50, loss value is 0; take another small scale center (245, 205), Euclidean distance
[0060]
[0061] The loss is
[0062] Anomaly detection points are removed based on a probabilistic model. A probabilistic model is established to calculate the posterior probability that each point is a normal detection point. The model with the highest likelihood value is retained. The relevant formula for the probabilistic model is p(δ). i )=γ·p(δ i |correct)+(1-γ)·p(δ i |wrong), where p(δ) i ) represents the probability distribution of the distance between the detection point and the candidate circle; ω i Used to screen effective detection points and optimize circle center fitting; γ new This represents the normal detection rate for each probability model; σ new This represents the noise level for each probability model; L represents the likelihood value of each probability model. The posterior probability of each point being a normal point is calculated using the probability model. The normal point rate and noise level are iteratively updated, and the model with the highest likelihood value is retained. Let the initial normal point rate γ = 0.8, and the normal point noise follow a normal distribution p(δ). i |correct)~N(0,σ 2 The outliers follow a uniform distribution p(δ). i |wrong)~U(0,500).
[0063] For the small scale point (255, 205), the distance but Posterior probability
[0064] Calculate ω for all points i Update normal point rate Assume n = 50, initial ∑ω i =30, then γ new=0.6; Calculate the noise level If ∑ω i δ i 2 =100000, ∑ω i =30, then Calculate the likelihood value Compare the L values of different models and retain the maximum likelihood model.
[0065] The initial center coordinates (a0, b0) and radius r0 of the model are obtained based on the probability model with the maximum likelihood value. The initial center coordinates and radius are then processed to generate initial circle parameters. The formula for calculating the initial circle parameters is as follows: Converting the initial center coordinates and radius values into the initial circle parameters D0, E0, and F0 required for subsequent weighted least squares calculations is a crucial step in the robust identification method for unconventional dial pointer readings based on geometric constraints, from center fitting to subsequent parameter optimization. The specific calculation process is detailed below and will not be repeated here.
[0066] S106. Based on the initial circle parameters mentioned above, the center of the selected normal detection points is fitted using the weighted least squares method to generate the coordinates of the fitted circle center.
[0067] In one implementation, an initial weight value is calculated, where ∈ = 10 ;6 , The weights are calculated using the initial circle parameters, and the weighted least squares problem is solved iteratively until the parameter change is less than a threshold. The fitted circle center is then output. For the initial weight calculation, let the initial circle center be (a0, b0) = (250, 200), corresponding to D0 = -500 and E0 = -400. For the small scale point (155, 205), the squared gradient magnitude is... Initial weights (set up
[0068] Solving the weighted least squares problem Iteratively update D, E, and F. After the k-th iteration, if the parameters change...
[0069] Then convergence occurs. Update the weights, where λ is the regularization factor, which is preset. Convergence judgment || p (k:1) -p (k) ||<10 ;6 Output of fitted circle center coordinates After convergence, the center coordinates are a = -D / 2, b = -E / 2. Solving for D, we get D = -510, E = -420. Therefore, a = 255, b = 210, which are the final fitted center.
[0070] S107. Sort all the acquired scales by x-coordinate. Using the last scale, the first scale, the center coordinates of the pointer's detection frame, and the center coordinates of the fitted circle, construct the range line, zero line, and pointer line. Calculate the range angle and the reading angle. Combine the dial range to calculate the pointer reading and generate the dial reading recognition result.
[0071] In one implementation, all acquired large and small scale markings are sorted from left to right according to their x-coordinate values to obtain a sorted sequence of large scale coordinates. A dial identifies five large scale markings with the following center coordinates of the detection frame: (150,150), (200,160), (300,150), (350,140), (400,150). The sorted order by x-coordinate is: (150,150), (200,160), (300,150), (350,140), (400,150). This forms the large scale coordinate sequence [(150,150),(200,160),(300,150),(350,140),(400,150)].
[0072] The range line is constructed using the last large scale mark and the fitted circle center coordinates, the zero-point line is constructed using the first large scale mark and the fitted circle center coordinates, and the pointer line is constructed using the pointer's detection frame center coordinates and the fitted circle center coordinates. Using the sorted first and last large scale marks and pointer coordinates as endpoints, and combining them with the fitted circle center coordinates, three key straight lines are constructed using the two-point line-determination principle as the reference for angle calculation. The circle center coordinates obtained through the previous circle center fitting steps are (250, 200).
[0073] Construct the range line by connecting the last large scale coordinate (400, 150) with the center of the circle (250, 200). The two points determine the straight line, with a slope k1 = (150 - 200) / (400 - 250) = -50 / 150 = -1 / 3, and the equation y - 200 = -1 / 3(x - 250). Construct the zero-point line by connecting the first large scale coordinate (150, 150) with the center of the circle (250, 200), with a slope k2 = (150 - 200) / (150 - 250) = -50 / -100 = 1 / 2, and the equation y - 200 = 1 / 2(x - 250). Construct a pointer line, connecting the center coordinates (280, 220) of the pointer detection box with the center of the circle (250, 200), with a slope k3 = (220-200) / (280-250) = 20 / 30 = 2 / 3}, and the equation is y-200 = 2 / 3(x-250)}.
[0074] The included angle calculation model is used to calculate the included angle between the range line and the zero line, and the included angle between the pointer line and the zero line. The relevant formulas are as follows:
[0075] The included angle of the measuring range is
[0076] The angle between the readings is
[0077] The cosine of the angle between two lines is calculated using the dot product formula, and the angle value is obtained through the inverse cosine function, representing the range and pointer position respectively. Range line vector: The vector from the center to (400, 150) is (400-250, 150-200) = (150, -50); Zero line vector: The vector from the center to (150, 150) is (150-250, 150-200) = (-100, -50); Pointer line vector: The vector from the center to (280, 220) is (280-250, 220-200) = (30, 20).
[0078] The range angle is calculated as follows: vector dot product (150)(-100)+(-50)(-50)=-15000+2500=-12500; vector magnitude product
[0079] Substituting into the formula, we can obtain the range angle. Angle of display
[0080]
[0081] Based on the dial range calculation model and the dial range A, the pointer reading is calculated using the following formula: The dimensional letter is identified as "V". Combined with the equipment parameters, the range A = 24V is determined. The reading = A × (θ_x / θ_A) = 24 × (173.6° / 135°) ≈ 24 × 1.286 ≈ 30.86V.
[0082] Based on the scale coordinates, center coordinates, pointer coordinates, angle calculation results, and dial range, the dial reading recognition result is generated. The scale coordinate sequence is [(150,150),(200,160),(300,150),(350,140),(400,150)]; the fitted center is (250,200); the pointer coordinates are (280,220); the range angle is 135°, the reading angle is 173.6°; the dial range is 24V; the final recognition result is 30.86V, with an error range of ±0.5V (due to the accuracy of angle calculation and range linearization), which meets the accuracy requirements for railway equipment inspection.
[0083] This application addresses the challenge of recognizing readings on unconventional dials in industries such as railways and power. It utilizes the YOLO framework to train an object detection model that identifies the dial, small scale, large scale, pointer, and dimensional letters, obtaining their coordinates. The range is determined by the dimensional letters. Element coordinates are compared to determine hierarchical relationships, constructing a key-value mapping. Outliers are removed using overdetermined equations, Huber loss, and a probability model based on the center coordinates of the small scale, combined with weighted least squares optimization to fit the center of the circle. The large and small scales are sorted by their x-coordinates, constructing range lines, zero-point lines, and pointer lines. The included angle is calculated and combined with the range to derive the reading.
[0084] By using small graduations as the sample center for fitting, the fitting accuracy is improved; target detection and geometric constraints are integrated to solve the problems of non-circular dials and complex backgrounds; and angle calculation is used to bypass the challenge of recognizing tilted text. In the dial scenario of railway interlocking train control equipment, this solution achieves a reading recognition error of ±0.5V when the range is 0-24V, meeting the lightweight and real-time requirements of intelligent inspection robots.
[0085] In one implementation, such as Figure 3 As shown, this application also provides a robust recognition device for unconventional dial pointer readings based on geometric constraints and target detection, comprising:
[0086] The acquisition module 301 is used to acquire image data of unconventional dials and a preset dial annotation dataset, wherein the preset dial annotation dataset includes annotation information of the dial and key elements within the dial;
[0087] Processing module 302 is used to train an object detection model for recognizing the dial and key elements within the dial using the YOLO framework, based on a preset dial annotation dataset and image data of unconventional dials. The trained object detection model is used to detect and recognize the dial, small scale, large scale, pointer, and dimensional letters in the video data under test, obtaining their coordinate information. The dial range is determined through text recognition of the dimensional letters. The position coordinates of different labeled elements are compared to determine the subordinate and correspondence relationships between each dial and the key elements within it, assigning key-value relationships in a storage dictionary. Based on the detected small scale bounding boxes... The initial circle parameters are generated by evaluating candidate circle parameters and removing abnormal detection points using the probability method of maximum likelihood estimation. Based on these initial circle parameters, the center of the arc is fitted to the selected normal detection points using the weighted least squares method to generate the fitted circle center coordinates. All the obtained scales are sorted by x-coordinate, and the range line, zero line, and pointer line are constructed using the last and first scales, the center coordinates of the pointer's detection box, and the fitted circle center coordinates. The range angle and the reading angle are calculated, and the pointer reading is calculated by combining the dial range to generate the dial reading recognition result.
[0088] The various embodiments in this application are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the embodiments for evaluating robust recognition methods, electronic devices, electronic equipment, and readable storage media for unconventional dial pointer readings based on geometric constraints and object detection are basically similar to the above-described embodiments of robust recognition methods for unconventional dial pointer readings based on geometric constraints and object detection, and are therefore described relatively simply. Relevant details can be found in the descriptions of the above-described embodiments of robust recognition methods for unconventional dial pointer readings based on geometric constraints and object detection.
Claims
1. A method for robust recognition of unconventional dial pointer indication based on geometric constraints and object detection, characterized in that, The method comprises the following steps: acquiring image data of an irregular dial and a preset dial annotation data set, wherein the preset dial annotation data set comprises annotation information of the dial and key elements in the dial; training a target detection model required for dial and key element recognition in the dial based on the preset dial annotation data set and the image data of the irregular dial using a YOLO framework; detecting and recognizing the dial, small scale, large scale, pointer, and dimension letter in the to-be-tested video data using the trained target detection model, acquiring coordinate information thereof, and determining the dial range through character recognition of the dimension letter; comparing the position coordinates and sizes of different label elements to determine the affiliation and correspondence of each dial and key element in the dial, and assigning a key-value relationship to them in a storage dictionary; based on the center coordinates of all small scale detection boxes, using the maximum likelihood estimation probability method, evaluating the candidate circle parameters, removing abnormal detection points, and generating initial circle parameters; based on the initial circle parameters, using the weighted least squares method to perform circle center fitting processing on the normal detection points selected, and generating fitted circle center coordinates; sorting all the large scales according to the x coordinates, respectively using the detection box center coordinates of the last large scale, the first large scale, and the pointer, constructing the range line, the zero point line, and the pointer line, calculating the range angle and the indication angle, combining the dial range to calculate the pointer indication, and generating the dial indication recognition result.
2. The method of claim 1, wherein, Based on the preset dial annotation data set and the image data of the irregular dial, a target detection model required for dial and key element recognition in the dial is trained using a YOLO framework, which comprises: performing data cleaning and preprocessing on the preset dial annotation data set and the image data of the irregular dial to generate preprocessed data, wherein the preprocessed data comprises denoising and normalization processing of the image, format unification and error correction of the annotation information; building a network structure of the target detection model based on the YOLO framework to generate an initial model framework, wherein the initial model framework comprises a backbone network, a neck network, and a head network, the backbone network is used to extract image features, the neck network is used for feature fusion, and the head network is used for target classification and positioning; inputting the preprocessed data into the initial model framework, and using the back propagation algorithm and the optimizer to iteratively optimize the model parameters to generate a model in training, wherein the intersection over union loss function and the class cross entropy loss function are used in the optimization process to improve the detection accuracy of the model for the dial and the key elements in the dial; verifying and adjusting the parameters of the model in training to generate a target detection model, wherein the precision, recall, and average precision of the model are evaluated using a validation set during the verification process, and the hyperparameters of the model are adjusted according to the verification results.
3. The method of claim 2, wherein, using the trained target detection model to detect and recognize the dial, small scale, large scale, pointer, and dimension letter in the to-be-tested video data, acquiring coordinate information thereof, and determining the dial range through character recognition of the dimension letter, which comprises: The trained target detection model is applied to detect and identify the dials, small scales, large scales, pointers, and dimension letters in the to-be-tested video data, to generate coordinate information corresponding to the dials, small scales, large scales, pointers, and dimension letters; Text recognition is performed on the recognized dimension letters, and a dial range is generated based on the recognition result, wherein the prominent dimension letter at the center of the dial represents the dimension of the physical quantity monitored by the instrument, and the physical quantity is determined by recognizing the letter, and then the dial range is determined.
4. The method of claim 1, wherein, The position coordinates and sizes of different label elements are compared to determine the affiliation and correspondence of each dial and the key elements in each dial, and the key value relationship is assigned in the storage dictionary, including: The position coordinates and sizes of different label elements are extracted and compared to generate dial detection box coordinate information and dial key element detection box coordinate information, wherein each type of element detected by the target detection model has a unique label; The dial detection box coordinate information and the dial key element detection box coordinate information are analyzed and processed to generate position affiliation feature information of the elements and the dial; The position affiliation feature information of the elements and the dial is analyzed and processed to generate correspondence information of the dial and the elements; Based on the correspondence information of the dial and the elements, different label elements and dials are marked and matched to generate preliminary key value pairs; The preliminary key value pairs are integrated and verified to generate accurate dial and element key value relationships, and the key value relationship is assigned in the storage dictionary, with the key being the dial identifier and the value being the corresponding element list.
5. The method of claim 1, wherein, Based on the center coordinates of all the small scale detection boxes, the maximum likelihood estimation probability method is used to evaluate the candidate circle parameters, remove abnormal detection points, and generate initial circle parameters, including: The small scale detection box center coordinate collection model is used to obtain the center coordinates of all the small scale detection boxes; The model is solved by using over-determined equation regularization, k points are randomly selected each time to establish an over-determined equation set and to be solved, candidate circle parameters are obtained, and the over-determined equation set is candidate circle parameters are For each generated candidate circle parameter, calculate the Euclidean distance δ of all points to the candidate circle i and calculate its huber loss, where c is the normal detection point threshold value; Based on the probability model, the abnormal detection points are removed, the posterior probability of each point being a normal detection point is calculated by establishing a probability model, and the probability model with the largest likelihood value is reserved. The probability model related formula is p(δ i ) = γ·p(δ i |correct) + (1-γ)·p(δ i |wrong), wherein, p(δ i ) represents the probability distribution of the detection point distance from the candidate circle. ω i For screening effective detection points and optimizing circle center fitting; gamma new representing the normal detection point rate for each probability model; σ new representing a noise level for each probability model; L represents the likelihood value of each probability model; The initial circle center coordinates (a0, b0) and the radius value r0 of the model are obtained based on the probability model with the maximum likelihood value; The initial circle center coordinates and the radius value are processed to generate the initial circle parameters, and the initial circle parameters are counted 6. The method of claim 5, wherein, Based on the above initial circle parameters, the weighted least squares method is used to perform circle center fitting processing on the selected normal detection points to generate fitted circle center coordinates, including: computing initial weight values, wherein Solving a weighted least squares problem updating the weights, where λ is a regularization factor, predetermined Convergence judgment ‖p (k+1) -p (k) ‖<10 -6 Fitting circle center coordinate result output 7. The method of claim 5, wherein, All the large and small scales are sorted by x coordinates, and the detection box center coordinates of the last large scale, the first large scale, and the pointer are used to construct the range line, the zero point line, and the pointer line, respectively, to calculate the range angle and the indication angle, calculate the pointer indication based on the dial range, and generate the dial indication recognition result, including: All the large and small scales are sorted by x coordinate values from left to right to obtain the sorted large scale coordinate sequence; The last large scale and the fitted circle center coordinates are used to construct the range line, the first large scale and the fitted circle center coordinates are used to construct the zero point line, and the pointer detection box center coordinates and the fitted circle center coordinates are used to construct the pointer line; The angle calculation model is used to calculate the range angle between the range line and the zero point line, and the indication angle between the pointer line and the zero point line, and the related formula is: The range of the angle is The angle of the indicator is Based on the dial range calculation model, in combination with the dial range A, the pointer indication is calculated, Based on the scale coordinates, the center coordinates, the pointer coordinates, the angle calculation result and the dial range, a dial reading recognition result is generated.
8. An apparatus for robust recognition of irregular dial pointer indication based on geometric constraints and object detection, characterized in that, The apparatus comprises: An acquisition module is configured to acquire image data of an irregular dial and a preset dial annotation data set, wherein the preset dial annotation data set comprises annotation information of the dial and key elements in the dial. A processing module is configured to train a target detection model required for dial and key element recognition in the dial based on the preset dial annotation data set and the image data of the irregular dial by using a YOLO framework; detect and recognize the dial, the small scale, the large scale, the pointer and the dimension letter in the video data to be measured by using the trained target detection model, acquire coordinate information of the dial, the small scale, the large scale, the pointer and the dimension letter, and determine a dial range by text recognition of the dimension letter; compare the position coordinates and sizes of different label elements, determine the belonging and corresponding relationship between each dial and each key element in the dial, and assign a key-value relationship to each dial and each key element in the dial in a storage dictionary; based on the center coordinates of all the small scale detection boxes, remove abnormal detection points by evaluating candidate circle parameters by using a maximum likelihood estimation probability method, and generate initial circle parameters; based on the initial circle parameters, perform circle center fitting processing on the normal detection points selected by using a weighted least square method, and generate fitted circle center coordinates; sort all the large scales according to the x coordinates, and use the center coordinates of the detection boxes of the last large scale, the first large scale and the pointer and the fitted circle center coordinates to construct a range line, a zero point line and a pointer line, calculate a range angle and a reading angle, calculate a pointer reading in combination with the dial range, and generate a dial reading recognition result.
9. An electronic device, comprising: It comprises: a first processor; and a memory for storing executable instructions of the first processor; wherein the first processor is configured to execute the executable instructions to perform the irregular dial pointer reading robust recognition method based on geometric constraints and target detection according to any one of claims 1-7.
Citation Information
Patent Citations
Full-automatic pointer type meter counting value identification method based on OCR and key point detection
CN119418344A
Adaptive Auto Meter Detection Method based on Character Segmentation and Cascade Classifier
US20190095739A1