Intelligent file classification storage system
By optimizing text layout and adjusting classification rule priorities, and dynamically merging archive block boundaries, the problems of insufficient non-standard file identification and storage scalability in traditional systems are solved, achieving efficient file classification and storage management.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-27
- Publication Date
- 2026-04-07
AI Technical Summary
Traditional intelligent archive classification and storage systems rely on static rules and manual judgment, which limits their recognition capabilities and flexibility, makes it difficult to handle non-standard archive layouts, and has insufficient scalability of storage structure.
By analyzing the pixel density of the character block centerline, performing rotation matrix transformations to optimize text layout, and combining the statistics of rule triggering times and misjudgment times, the priority of classification rules is adjusted, the weight of number hierarchy is calculated, the boundaries of archive blocks are dynamically merged, and the generation of archive paths is optimized.
It improves the ability to identify non-standard archives, enhances the accuracy of classification and the extensibility of storage structure, and shortens the archive retrieval path and archiving execution time.
Smart Images

Figure CN121580968B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of archival storage technology, and in particular to an intelligent archival classification and storage system. Background Technology
[0002] The field of archival storage technology encompasses the processes of archiving, managing, classifying, storing, and retrieving both paper and electronic archives. Core aspects include the digitization of archival information, classification and coding, storage media configuration, archive retrieval procedures, and lifecycle management solutions. Within this field, systematic technological development covers archival metadata modeling, storage media selection and configuration, indexing mechanism establishment, standardized archival classification rule setting, and automated management methods for the physical and logical storage of archives. Currently, with the integration of information technology, archival storage is gradually shifting from traditional manual management methods to standardized and intelligent operations relying on information systems, with a development trend towards improving archival processing efficiency and access accuracy.
[0003] Traditional intelligent archival classification and storage systems refer to systems that automatically classify and orderly store archives based on preset classification rules and catalog structures, using hardware devices and information systems. Traditional systems address the classification, processing, and storage management of archives from multiple types and sources. They typically employ label recognition and barcode annotation combined with manual classification and data entry to construct and archive catalogs. Classification is often based on administrative classification standards, content-related tags, or chronological order. Storage structures often rely on fixed locations such as filing cabinets and storage boxes, with sequential numbering. Traditional systems primarily depend on character matching to determine archive categories, and archiving is performed based on static location information. The system's recognition capabilities and flexibility are limited by predefined rules and templates. Summary of the Invention
[0004] The purpose of this invention is to address the shortcomings of existing technologies by proposing an intelligent archive classification and storage system.
[0005] To achieve the above objectives, the present invention adopts the following technical solution: an intelligent archive classification and storage system, the system comprising:
[0006] The character layout parsing module obtains the archive text blocks in the scanned image, performs a rotation matrix transformation on the angular deviation between the geometric center point coordinates of each character block and the alignment line, and repositions the character layout order in the whole text to obtain the archive original structure with optimized layout order.
[0007] The rule priority determination module obtains the original structure of the archive after the arrangement order is optimized, counts the number of times each classification rule is triggered and the number of misjudgments in the archived record, calculates the classification rule adaptation rate and classification error standard deviation, adjusts the execution order of the classification rules, and obtains the classification rule set after priority rearrangement;
[0008] The classification number registration module, based on the classification rule set after priority rearrangement, determines the archive category of the current archive according to the high priority rule, matches the number structure offset value with the existing number index table, identifies the archive block with the smallest number offset, and obtains the archive classification archive block with registered number;
[0009] The storage location extension module calls the registered numbered archive classification archiving block, determines whether the ratio of the total number of sub-numbered entries in the archiving block to the block capacity exceeds the numbered block overflow threshold, updates the numbered block boundary pointer, marks it as an extended state, and obtains the archive classification block identifier set with extended boundaries.
[0010] As a further aspect of the present invention, the original structure of the archive after the arrangement order optimization includes a character baseline position sequence, a text block reorganization structure, and character arrangement direction parameters; the classification rule set after priority rearrangement includes a rule level division list, a classification strategy index table, and a task scenario adaptation mapping group; the archive classification archiving blocks with registered numbers include target number block addresses, number structure matching records, and archiving capacity allocation tables; and the archive classification block identifier set with expanded boundaries includes expanded number boundary values, block merging status identifiers, and a set of newly added available directory locations.
[0011] As a further aspect of the present invention, the character arrangement parsing module includes:
[0012] The text image acquisition submodule acquires the document text block in the scanned image, extracts the grayscale pixel values of the character region in the image matrix, performs binarization processing on the character edge according to the preset grayscale threshold, locates the rectangular boundary of the character block according to the set of white pixel coordinates in the binary image, extracts the geometric center coordinates of each character block, and generates a character center coordinate index sequence.
[0013] The vertical alignment line extraction submodule detects the number of white pixels in the vertical center line pixel column of the character based on the vertical coordinate position of the corresponding character block in the character center coordinate index sequence, calculates the number of overlapping pixels in the vertical pixel column, locates the vertical index interval where the maximum overlapping value is located, and calculates the main alignment line index position by the average pixel density change within the maximum value interval, and generates the character alignment reference vertical position value.
[0014] As a further aspect of the present invention, the rule priority determination module includes:
[0015] The rule triggering statistics submodule obtains the document type code, document creation date and keyword term set in the original structure of the archive after the arrangement order is optimized. For each classification rule in the archive record, it counts the number of times the rule is triggered and the number of misjudgments in the historical archive record, and generates a classification rule triggering statistics table.
[0016] The adaptation rate calculation submodule calls the data on the number of classification rule triggers and the number of misjudgments in the classification rule trigger statistics table. By dividing the number of rule triggers by the total number of archived records, the adaptation rate of each classification rule is calculated, and a classification rule adaptation rate result set is generated.
[0017] The rule priority reordering submodule calculates the score value of each rule based on the classification rule adaptation rate result set and the number of misjudgments in the classification rule trigger statistics table, sorts all rules from high to low based on the score value, adjusts the execution order of the classification rules, and obtains the classification rule set after priority reordering.
[0018] As a further aspect of the present invention, the formula for obtaining the score value of each rule is specifically as follows:
[0019] ;
[0020] in, Representative Rules The rating value, Representative Rules The number of times it has been triggered in the history. Represents the total number of archived records. Representative Rules In the The number of misjudgments in each archived record This represents the average misjudgment value across all rules. This represents the total number of archived records.
[0021] As a further aspect of the present invention, the classification number registration module includes:
[0022] The file number extraction submodule obtains the file category corresponding to the high priority rule of the current file from the priority rearranged classification rule set, extracts the number string of the file identifier belonging to the category, splits out each structural level item field from the number, converts each level item into an integer value sequence according to the decimal encoding rule, and stores it in an ordered structural vector to generate a number level value vector group.
[0023] The structural offset calculation submodule calls each level of numerical item in the numbered hierarchical numerical vector group, sets a decimal digit weight value for each item, performs the weight product of each item and sums the digits to obtain the weighted number total value, extracts the weighted value list of archived numbers, calculates the difference sequence between the current number weight value and the archived number values in the list, outputs the minimum number structure difference value, and generates the minimum number structure offset value.
[0024] The archive block matching submodule queries the archive location block address range recorded in the number index table based on the number index value corresponding to the minimum number structure offset value, combines the block address with the attribution relationship identifier of the current archive category, determines the storage status, records the number path position that meets the registration requirements, and generates the archive classification archive block with registered number.
[0025] As a further aspect of the present invention, the storage location extension module includes:
[0026] The number capacity assessment submodule obtains the number of existing files, the maximum number of files that the block can hold, and the number of free directory bits in the current archive record corresponding to the registered numbered archive classification archive block. It calculates the ratio between the number of sub-number entries in the current block and the maximum number of files that can be held, and compares the ratio with the numbered block overflow threshold to determine whether the overflow status is valid and generates the numbered block overflow determination result.
[0027] The archive block merging submodule extracts the block storage identifier of the adjacent physical location after the block based on the archive block marked as overflowing in the overflow determination result of the numbered block, and determines whether the adjacent block is in a pending allocation or idle state. If the condition is met, the current archive block and the empty area are merged in the logical address space to form a consecutive numbered storage segment, thus obtaining the numbered block logical merging structure.
[0028] The boundary pointer update submodule calls the start and end values of the merged number boundary in the logical merging structure of the numbered blocks, rewrites the block boundary pointer table, replaces the original number ending position with the new number ending position in the current merged structure, adds an extended status identifier label and synchronizes the index status table content, and generates a set of file classification block identifiers with extended boundaries.
[0029] As a further aspect of the present invention, the overflow threshold of the numbered block is set to be the sum of the average value and standard deviation of the maximum number of files that the current archive block can accommodate.
[0030] As a further aspect of the present invention, the system further includes:
[0031] The character position reconstruction submodule calls the alignment line coordinates represented by the vertical position value of the character alignment reference, uses the coordinates as the reference position for rotation transformation, calculates the angle between the vertical coordinates of the characters in the character center coordinate index sequence and the alignment line coordinates, constructs a two-dimensional rotation matrix based on the obtained angle value, rotates and adjusts the original coordinate set and outputs a new coordinate sequence, and obtains the original file structure with optimized arrangement order.
[0032] The archive archiving path information includes the target archive archiving path number, the equipment scheduling location table, and the path displacement sorting sequence.
[0033] As a further aspect of the present invention, the archive path generation module includes:
[0034] The archive attribute extraction submodule obtains the target block address from the archive classification block identifier set of the extended boundary, extracts the number value, current physical storage sequence and physical address code of the archive to be processed in the archive cache pool, indexes the basic information of the target archive, and generates an archive attribute index set.
[0035] The number difference sorting submodule calculates the literal difference between the numbers based on the target file number and the first number of the target block in the file attribute index set, sorts the numbers of the files to be processed according to the difference, and generates a number difference sorting list.
[0036] The path selection and generation submodule calculates the displacement path length between each number and the target block based on the sorting result in the number difference sorting list and the physical path length of the archiving vehicle track. It selects the target number with the shortest displacement path as the archiving target to obtain the archive archiving path information.
[0037] Compared with the prior art, the advantages and positive effects of the present invention are as follows:
[0038] In this invention, the ability to recognize non-standard file layouts is improved by analyzing the pixel density of the character block centerline and performing rotation matrix transformation to correct text layout deviations. Combined with the extraction of key codes, formation time, and keywords in the text, the dynamics and classification accuracy of rule scheduling are enhanced by constructing a statistical relationship between the number of rule triggers and the number of misjudgments and prioritizing them according to rule adaptability. In the process of determining the archive number, a strategy of calculating the number hierarchy weight and comparing the structural offset is introduced to improve the accuracy of number registration and the degree of structural matching. When the archive block capacity is close to overflow, dynamic merging and boundary updates of adjacent empty areas are realized to maintain the extensibility of the classification storage structure. In the archive path generation, the number difference and the track movement path are jointly sorted and compared to shorten the file retrieval path and archive execution time, thereby improving the archive efficiency and the stability of number matching. Attached Figure Description
[0039] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0040] Figure 1 This is a system flowchart of the present invention;
[0041] Figure 2 This is a schematic diagram of the system framework of the present invention;
[0042] Figure 3 This is a flowchart of the character layout parsing module of the present invention;
[0043] Figure 4 This is a flowchart of the rule priority determination module of the present invention;
[0044] Figure 5 This is a flowchart of the classification number registration module of the present invention;
[0045] Figure 6 This is a flowchart of the storage location extension module of the present invention;
[0046] Figure 7 This is a flowchart of the archive path generation module of the present invention. Detailed Implementation
[0047] The technical solution of the present invention will now be described with reference to the accompanying drawings.
[0048] In embodiments of the present invention, words such as "exemplarily," "for example," etc., are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" in the present invention should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the word "exemplary" is intended to present the concept in a concrete manner. Furthermore, in embodiments of the present invention, the meaning expressed by "and / or" can be both, or either one.
[0049] In the embodiments of this invention, the terms "image" and "picture" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning. Similarly, the terms "of," "corresponding (relevant)," and "corresponding" may sometimes be used interchangeably. It should be noted that, without emphasizing the distinction between them, they convey the same meaning.
[0050] In this embodiment of the invention, sometimes a subscript such as W1 may be written in a non-subscript form such as W1. When the difference is not emphasized, the meaning they express is the same.
[0051] To make the technical problems, technical solutions and advantages of the present invention clearer, a detailed description will be given below in conjunction with the accompanying drawings and specific embodiments.
[0052] Please see Figure 1 The intelligent archive classification and storage system includes a character layout parsing module, a rule priority determination module, a classification number registration module, a storage location extension module, and an archive path generation module.
[0053] The character layout parsing module obtains the archive text blocks in the scanned image, detects the pixel density of the center vertical projection line of the character block, calculates the interval of the vertical line segment corresponding to the density peak as the layout alignment line, performs a rotation matrix transformation on the angle deviation between the geometric center point coordinates of each character block and the alignment line, and repositions the layout order of the characters in the whole text to obtain the archive original structure with optimized layout order.
[0054] The center vertical projection line is the pixel intensity projection line of the character image in the vertical direction, used to estimate the alignment between character columns; the geometric center point coordinates are the coordinates of the center point of the bounding rectangle of the character outline, which can be calculated using the cv2.moments method in OpenCV; the angular deviation refers to the angle between the character center point and the alignment line, in degrees, and is usually obtained by the atan2 function; the rotation matrix transformation is a standard linear algebraic method for rotating a point on a two-dimensional plane about a certain point;
[0055] The rule priority determination module obtains the document type code, document creation date and keyword term set from the original structure of the archive after the arrangement order is optimized. It counts the number of times each classification rule is triggered and the number of misjudgments in the archive record, calculates the classification rule adaptation rate and classification error standard deviation, scores the rules based on the two indicators, adjusts the execution order of the classification rules, and obtains the classification rule set after priority rearrangement.
[0056] The keyword term set is extracted from the text using a TF-IDF-based word segmentation algorithm and used to match classification tags;
[0057] The classification number registration module is based on the classification rule set after priority rearrangement. According to the high priority rule, the current archive is classified into categories. The module extracts the international decimal classification code structure hierarchy items of the current archive number, sets a decimal digit weight value for each item, calculates the numerical difference between the archive number and the archived number bit by bit and multiplies it by the weight value of each level, and sums them to obtain the number structure offset value. The number structure offset value is matched with the existing number index table to identify the archive block with the smallest number offset, and obtains the archive classification archive block with the registered number.
[0058] The International Classification of Archives (ICA) Decimal Code is a multi-level numbering system defined in the International Standard for Archival Description, which includes sub-items such as "archival category, affiliated institution, and retention period," each of which can be coded.
[0059] The number structure offset value is used to quantify the structural differences between the current file number and the archive structure.
[0060] The storage location extension module calls the archived blocks of the archived categories that have been registered and numbered. Based on the number of existing files, the maximum number of archives that can be accommodated, and the number of free directory bits, it determines whether the ratio of the total number of sub-numbered entries in the archived block to the block capacity exceeds the overflow threshold of the numbered block. If it exceeds the threshold, it merges the current block with the next adjacent empty area, updates the numbered block boundary pointer, marks it as an extended state, and obtains the archived category block identifier set with extended boundaries.
[0061] The overflow threshold for numbered blocks is usually set to 85% of the maximum capacity. The total number of sub-numbered entries is counted. For example, if an archive block is numbered "01.01", its sub-numbers such as "01.01.001" are also counted as sub-numbered entries. The number of free directory bits is counted based on the archive shelf space and storage cell.
[0062] The archiving path generation module extracts the file number value to be processed, the current physical storage sequence, and the physical address code of the target block from the archive cache pool based on the target block address in the archive classification block identifier set with the extended boundary. It sorts the file number to be processed and the first number of the target block by the literal number difference, compares the number difference with the distance the archiving vehicle moves along the track, selects the target number with the smallest difference and the shortest displacement path as the archiving target, and generates the archive archiving path information.
[0063] The physical address code assigns a number to each physical location (such as a cabinet) in the archiving system, such as "B area - column 3 - cell 12"; the archiving cart track movement distance refers to the length (in meters) of the movement path required by the automatic archiving equipment, which needs to be calculated to control energy consumption and optimize the path; the literal number difference is the difference obtained by subtracting each pair of the number strings after interpreting them in decimal;
[0064] The optimized arrangement order of the original archive structure includes the character baseline position sequence, text block reorganization structure, and character arrangement direction parameters. The priority rearranged classification rule set includes the rule level division list, classification strategy index table, and task scenario adaptation mapping group. The archive classification archiving blocks with registered numbers include the target number block address, number structure matching record, and archiving capacity allocation table. The archive classification block identifier set with expanded boundaries includes the expanded number boundary value, block merging status identifier, and newly added available directory location set. The archive archiving path information includes the target archiving path number, equipment scheduling location table, and path displacement sorting sequence.
[0065] Please see Figure 2 and Figure 3 The character layout parsing module includes:
[0066] The text image acquisition submodule acquires the document text block in the scanned image, extracts the grayscale pixel values of the character region in the image matrix, performs binarization processing on the character edge according to the preset grayscale threshold, locates the rectangular boundary of the character block according to the set of white pixel coordinates in the binary image, extracts the geometric center coordinates of each character block, and generates a character center coordinate index sequence.
[0067] Using a high-resolution industrial scanner, with the optical resolution parameter set to 600 dpi, the paper documents to be processed were scanned line by line, generating a resolution of [missing information]. The original TIFF image is processed pixel by pixel, and then the grayscale conversion function of the image processing unit is called to iterate through each coordinate point in the image matrix. The RGB color components, according to the photometric weighting formula Calculate grayscale values to reduce the 24-bit color depth to an 8-bit grayscale space; for setting the grayscale threshold, select 5 values from the four corners and the center of the image. Pixel regions are used as background sampling samples, and the average grayscale value of the samples is calculated to be 245. Dense text regions are selected as foreground sampling samples, and the average grayscale value is calculated to be 45. A binarization threshold is then set. It is the weighted median of the mean values of the background and foreground, i.e. Using the threshold of 165, a pixel-by-pixel comparison is performed on the entire image. Pixels with grayscale values less than 165 are set to 0 (black characters), and those greater than or equal to 165 are set to 255 (white background). An 8-neighborhood connected component analysis algorithm is then performed on the binarized image to label all connected pixel clusters and obtain the coordinates of the top-left corner of the bounding rectangle of each connected component. and the coordinates of the bottom right corner According to the formula and Calculate the geometric center, traverse all connected components, and then... Sort the values from smallest to largest to generate a sequence of character center coordinate indices containing 350 character objects.
[0068] The vertical alignment line extraction submodule detects the number of white pixels in the vertical center line pixel column of the character based on the vertical coordinate position of the corresponding character block in the character center coordinate index sequence, calculates the number of overlapping pixels in the vertical pixel column, and locates the vertical index interval where the maximum overlapping value is located. By using the average pixel density change within the maximum value interval, the main alignment line index position is calculated, and the character alignment reference vertical position value is generated.
[0069] Read the horizontal coordinates of all character objects in the character center coordinate index sequence and vertical coordinates A vertical projection array with a width of 4961 pixels is established. Each column of pixels along the image height is traversed, and the number of pixels with a grayscale value of 255 in the binary image is counted. The result is stored in the corresponding index of the projection array. The projection array is then scanned using a sliding window algorithm, with a window width of 20 pixels (corresponding to the common stroke width at the scanning resolution). The sum of pixels within the window is calculated, and values exceeding a preset peak baseline (95% of the image height) are identified. A continuous interval of pixels, dividing the interval Mark the vertical index interval containing the maximum overlapping value, calculate the rate of change of the count values of adjacent pixel columns within this interval, and take the position with the minimum mean absolute value of the rate of change. As the primary alignment line index position, the final character alignment baseline vertical position value is determined to be 1250.
[0070] The character position reconstruction submodule calls the alignment line coordinates represented by the vertical position value of the character alignment reference, uses the coordinates as the reference position for rotation transformation, calculates the angle between the vertical coordinates of the characters in the character center coordinate index sequence and the alignment line coordinates, constructs a two-dimensional rotation matrix based on the obtained angle value, rotates and adjusts the original coordinate set and outputs a new coordinate sequence, and obtains the original file structure with optimized layout order.
[0071] Read the vertical position value of the character alignment reference Define it as the axis of rotation transformation, traverse the first 50 character blocks in the character center coordinate index sequence, and calculate the center of each character block. With baseline Horizontal distance deviation By combining the vertical distribution span of the characters, the least squares method is used to fit the linear regression equation of the deviation scatter plot, and the slope of the fitted line is obtained. Then calculate the tilt angle. Construct a two-dimensional rotation matrix With the center point of the image Using the origin of rotation, the center coordinates of all 350 characters in the sequence are... Perform matrix multiplication to calculate the new coordinates after rotation. According to the new coordinates The text lines are re-layered and sorted to obtain the original file structure with optimized layout.
[0072] Please see Figure 2 and Figure 4 The rule priority determination module includes:
[0073] The rule trigger statistics submodule obtains the document type code, document creation date and keyword term set in the original structure of the archive after the arrangement order is optimized. For each classification rule in the archive record, it counts the number of times the rule is triggered and the number of misjudgments in the historical archive record, and generates a classification rule trigger statistics table.
[0074] The system calls a natural language processing interface to parse the original structure of the archives after the optimized arrangement order. It extracts the document type code "XZ-01" (administrative category), the document creation date "2023-11-15", and the keyword term set {"annual assessment", "performance", "summary"}, and connects it to the historical archive database. For the preset classification rule set (a total of 5 rules), it traces back the archive logs of the past year. For "Rule A: contains 'assessment' and the category is 'administrative'", it iterates through 1200 entries in the historical record database, compares the classification label of each record with the rule judgment result, and counts that Rule A was called by the system a total of 150 times. Among them, the classification result was corrected by manual review (i.e., it was judged as a misjudgment) 12 times. Following this logic, it iterates through all rules and generates a classification rule trigger statistics table containing three fields: rule ID, number of triggers, and number of misjudgments.
[0075] The adaptation rate calculation submodule calls the data on the number of classification rule triggers and the number of misjudgments in the classification rule trigger statistics table. By dividing the number of rule triggers by the total number of archived records, it calculates the adaptation rate of each classification rule and generates a classification rule adaptation rate result set.
[0076] Read data from the classification rule trigger statistics table to obtain the total number of archived records in the system's history. For rule A, read the number of times it was triggered. and number of misjudgments Perform division operation For rule B, read the number of triggers. Number of misjudgments ,calculate Complete the calculation of all 5 rules in sequence, write the calculation results into the memory array, and generate the classification rule adaptation rate result set.
[0077] The rule priority reordering submodule uses the classification rule adaptation rate result set and the number of misjudgments in the classification rule trigger statistics table, using the following formula:
[0078] ;
[0079] The algorithm calculates the score for each rule, sorts all rules from highest to lowest score, adjusts the execution order of the classification rules, and obtains the classification rule set after priority rearrangement.
[0080] in, Representative Rules The rating value, Representative Rules The number of times it has been triggered in the history. Represents the total number of archived records. Representative Rules In the The number of misjudgments in each archived record This represents the average misjudgment value across all rules. Represents the total number of archived records;
[0081] Based on the classification rule fit rate result set and the misclassified data, a scoring formula is introduced:
[0082] ;
[0083] Each rule is quantitatively scored. The definitions and acquisition methods of the parameters in the formula are as follows: For rules The overall score is used to measure the reliability and coverage of the rules; For rules The cumulative number of times it has been triggered in the history is obtained by querying the log table; This represents the total number of samples in the historical archive records, with a value of 5000. This represents the total number of archived records; the value here is 5000. Representative Rules In processing the first The misjudgment status value for a specific archived record (if the first one) Records are subject to rules Misjudgment ,otherwise ); This represents the rule The average false positive rate across all records, i.e. The first term in the formula The frequency of rule triggering represents the rule's general applicability; the second item It is the standard deviation of misjudgment behavior, using the summation symbol. Sum the squared misjudgment deviations for each record, then divide by the total number. The square root term measures the volatility of rule misjudgment behavior (i.e., the stability of rule performance). The overall logic of the formula is as follows: by subtracting the uncertainty (standard deviation) of the rule's misjudgment behavior from its high-frequency applicability, rules that are both commonly used and stable are selected.
[0084] Let's take rule A as an example and perform a practical calculation:
[0085] Known , Therefore, the first item is Regarding the calculation of the second standard deviation, rule A misclassified 12 times out of 5000 records. Therefore, there are 12 records with... 4988 records First, calculate the average false positive rate. .
[0086] Variance calculation:
[0087] For the 12 misjudgments: Summation is ;
[0088] For 4988 correct records: Summation is ;
[0089] Total Sum of Squares ;
[0090] The standard deviation term is ;
[0091] The final score for rule A is calculated. Similarly, for rule B (triggered 800 times, misjudged 40 times): the first item is 0.16. The standard deviation is calculated to be approximately ,but The results indicate that although rule B has a higher absolute number of misjudgments, its high trigger rate and relatively stable performance result in a higher overall score. Higher than rule A The system is based on the calculated value sequence Sort the rules in descending order, placing rule B before rule A, and adjust the execution order of the classification rules to obtain the classification rule set after priority rearrangement.
[0092] Please see Figure 2 and Figure 5 The classification number registration module includes:
[0093] The file number extraction submodule obtains the classification rules set after priority rearrangement and matches the file category corresponding to the high priority rule of the current file. It extracts the file identifier number string of the category to which the file belongs, splits out each structural level item field from the number, converts each level item into an integer value sequence according to the decimal encoding rule, and stores it in an ordered structural vector to generate a number level value vector group.
[0094] The current file is input into the reordered classification rule set. The first high-priority rule (rule B) matches successfully, determining the file category as "financial". The standard file identifier string "2023-FIN-07-015" under this category is extracted. The string splitting function is called, using the hyphen "-" as the delimiter, to split the number into four fields: "2023", "FIN", "07", and "015". According to the preset decimal encoding mapping table (e.g., FIN maps to 5, ADM maps to 1), the non-numeric fields are converted to integers, resulting in the numerical sequence: [2023, 5, 7, 15]. An integer vector container of length 4 is initialized, and the above values are filled in sequentially to generate a numbered hierarchical numerical vector group. .
[0095] The structural offset calculation submodule calls each level of numerical item in the numbering level numerical vector group, sets a decimal digit weight value for each item, performs the weight product of each item and sums the digits to obtain the weighted number total value, extracts the weighted value list of archived numbers, calculates the difference sequence between the current number weight value and the archived number values in the list, outputs the minimum numbering structure difference value, and generates the minimum numbering structure offset value.
[0096] Read the numbered hierarchical numerical vector group A decimal weight value is assigned to each level, and the weight is set according to the data capacity limit of each level: the first level (year) is set to a weight of 100%. The second-level (category) weight is set to The third level (month) weight is set to The weight of the fourth level (serial number) is set to The specific weight allocation is shown in Table 1. Perform a weighted summation to calculate the total value for the current number. Then, connect to the database to retrieve a weighted list of the three most recent archived numbers within the same category. Calculate the difference sequence: , , Compare the difference sequences and select the non-zero positive integer difference with the smallest absolute value. As an indicator of structural tightness, the minimum numbered structural offset value of 1 is generated.
[0097] Table 1. Archive Number Hierarchical Weight Allocation Table
[0098]
[0099] As shown in Table 1, by setting a tiered weight, it is ensured that the impact of changes at higher levels on the total value is much greater than that at lower levels, thus guaranteeing the mathematical monotonicity of the numbering logical order.
[0100] The archive block matching submodule queries the archive location block address range recorded in the number index table based on the number index value corresponding to the minimum number structure offset value, combines the block address with the attribution relationship identifier of the current archive category, determines the storage status, records the number path position that meets the registration requirements, and generates the archive classification archive block with registered number.
[0101] Read the minimum number structure offset value of 1. Based on the logical proximity relationship derived from this offset value, query the number index table to find the physical archive location of the preceding node "2023-FIN-07-014" of the number "2023-FIN-07-015" in the logical sequence. The returned result is "Area B - Row 3 - Shelf 05". Read the address range attribute of this physical block and display it as follows: The current archive category identifier "financial" is compared with the set of allowed storage categories for this block. If a match is found and the status is "writable", the physical path code "B-03-05" of this block is recorded, and an archive classification and archiving block with a registration number is generated.
[0102] Please see Figure 2 and Figure 6 The storage location extension module includes:
[0103] The number capacity assessment submodule obtains the number of existing files, the maximum number of files that the block can hold, and the number of free directory bits in the current archive record corresponding to the archive block with the registered number. It calculates the ratio between the number of sub-number entries in the current block and the maximum number of files that can be held, and compares the ratio with the number block overflow threshold to determine whether the overflow status is valid and generates the number block overflow judgment result.
[0104] The overflow threshold for numbered blocks is set based on the sum of the average and standard deviation of the maximum number of files that the current archive block can hold.
[0105] The real-time status data of the archive block "B-03-05" is obtained through the sensor network. The number of existing files in the current archive record is detected to be 48. The factory setting of the maximum number of files that the block can hold is read as 50. The number of bits in the free directory is calculated to be 2. The ratio is calculated by dividing the number of sub-numbered entries (48) in the current block by the maximum number of files that can be held (50) to obtain the fill ratio. The overflow threshold for the numbered block (set to 0.90, the process of obtaining this threshold is described below) was called, and a comparison was made. If an overflow risk is detected, the overflow flag is set to True, and an overflow determination result for the numbered block is generated. The process for setting the overflow threshold for the numbered block is as follows: 100 standard archival blocks already in use within the storage facility are selected as a sample set. The actual maximum number of archives that each block can hold is collected (the actual number may fluctuate due to variations in archive thickness). The sample data includes 30 thick archive blocks (accommodating 40 volumes), 50 standard blocks (accommodating 50 volumes), and 20 thin archive blocks (accommodating 60 volumes). The average value is calculated. : Calculate the standard deviation. :variance Standard deviation The baseline capacity reference value is set according to the formula "the sum of the mean and the standard deviation". However, in order to reserve a safety buffer when converting the fill rate threshold, a safety factor in statistics is used (here, a conservative value of 0.9 times the mean percentage is taken). In the actual calculation, the system converts the distribution characteristics obtained from the above statistics into a dimensionless ratio: normalizes the capacity to accommodate dynamic fluctuations, sets a trigger when the fill amount reaches the lower limit of the statistical range, and finally, after a large amount of historical data regression analysis, fixes the overflow threshold of the numbered block at 0.90 (i.e., 90%) to ensure that the warning is triggered before the physical space is completely exhausted.
[0106] The archive block merging submodule extracts the block storage identifier of the adjacent physical location after the block based on the archive block marked as overflow in the overflow determination result of the numbered block. It determines whether the adjacent block is in the state of pending allocation or idle. If the state is true, the current archive block and the empty area are merged in the logical address space to form a continuous numbered storage segment, and the numbered block logical merging structure is obtained.
[0107] Read the physical coordinates of the current block "B-03-05", retrieve the storage identifier of the block adjacent to it on the right as "B-03-06", and query the database to show that the status of "B-03-06" is "Empty"; execute the logical merge instruction, and in the system's logical address mapping table, connect the end logical address of "B-03-05" with the start logical address of "B-03-06", creating a virtual contiguous storage segment spanning two physical frames, and update the new logical capacity to [value missing]. This yields the logical merge structure of the numbered blocks.
[0108] The boundary pointer update submodule calls the start and end values of the merged number boundary in the numbered block logical merging structure, rewrites the block boundary pointer table, replaces the original number ending position with the new number ending position in the current merging structure, adds extended status identifier tags and synchronizes the index status table content, and generates a set of file classification block identifiers with extended boundaries.
[0109] Read the merged numbered block logical merge structure and obtain the starting value of the new logical address range. and new termination value (Corresponding to 100 storage bits), access the block boundary pointer table in memory, locate the original record row "B-03-05", update the original number termination position pointer from 50 to 100, add the "Ext_Linked" extended status identifier label to the metadata field of the record, synchronously update the available capacity field in the index status table, and generate the archive classification block identifier set with extended boundaries.
[0110] Please see Figure 2 and Figure 7 The archive path generation module includes:
[0111] The archive attribute extraction submodule obtains the target block address from the archive classification block identifier set with extended boundaries, extracts the number value, current physical storage sequence and physical address code of the archive to be processed in the archive cache pool, indexes the basic information of the target archive, and generates an archive attribute index set.
[0112] Parse the expanded boundary of the archive classification block identifier set, lock the physical mapping address of the target write location (i.e., the first empty slot in the newly merged area, the first position of the original B-03-06), extract the metadata of the archive to be processed "2023-FIN-07-015" in the archive cache pool, including the number value, physical specifications (thickness 15mm), current physical storage sequence (5th slot in the cache area), and the physical address code of the target block (Code: B0306-01), package this information into a structure, build a key-value pair index, and generate an archive attribute index set.
[0113] The number difference sorting submodule calculates the literal difference between the target file number and the first number of the target block based on the target file number in the file attribute index set, sorts the numbers of the files to be processed according to the difference, and generates a number difference sorting list.
[0114] Read the last serial number 15 of the file to be archived, "2023-FIN-07-015", from the file attribute index set, and the largest serial number 14 of the existing files in the target block (referring to the new segment after logical merging), and calculate the literal difference. If there are multiple files to be archived (e.g., both 015 and 017), calculate the difference between 017 and 14 as 3. Reorder the files in the cache according to their differences from smallest to largest, with 015 placed before 017, and generate a sorted list based on the file differences.
[0115] The path selection and generation submodule calculates the displacement path length between each number and the target block based on the sorting results in the number difference sorting list and the physical path length of the archiving vehicle track. It selects the target number with the shortest displacement path as the archiving target and obtains the archive archiving path information.
[0116] Paragraph 16: The path selection and generation submodule determines "2023-FIN-07-015" as the primary execution object based on the list sorted by number difference, and obtains its coordinates in the cache. Coordinates of the target archiving location Call the physical path length map of the archive car track to calculate the Manhattan distance. The length of each unit is calculated, and the backtracking path cost generated by storing number 017 first is compared. It is confirmed that the direct path of number 015 is the shortest. The movement instruction sequence is then encoded into a PLC control signal to obtain the archive archiving path information.
[0117] It should be understood that the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. A and B can be singular or plural. Additionally, the character " / " in this article generally indicates an "or" relationship between the preceding and following related objects, but it can also represent an "and / or" relationship. Please refer to the context for a more accurate understanding.
[0118] In this invention, "at least one" means one or more, and "more than one" means two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of a single item or a plurality of items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be a single item or multiple items.
[0119] It should be understood that, in various embodiments of the present invention, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0120] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0121] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the devices, apparatuses, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0122] In the embodiments provided by this invention, it should be understood that the disclosed devices, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0123] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0124] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0125] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0126] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. An intelligent archive classification and storage system, characterized in that, The system includes: The character layout parsing module obtains the archive text blocks in the scanned image, performs a rotation matrix transformation on the angular deviation between the geometric center point coordinates of each character block and the alignment line, and repositions the character layout order in the whole text to obtain the archive original structure with optimized layout order. The rule priority determination module obtains the original structure of the archive after the arrangement order is optimized, counts the number of times each classification rule is triggered and the number of misjudgments in the archived record, calculates the classification rule adaptation rate and classification error standard deviation, adjusts the execution order of the classification rules, and obtains the classification rule set after priority rearrangement; The classification number registration module, based on the classification rule set after priority rearrangement, determines the archive category of the current archive according to the high priority rule, matches the number structure offset value with the existing number index table, identifies the archive block with the smallest number offset, and obtains the archive classification archive block with registered number; The classification number registration module includes: The file number extraction submodule obtains the file category corresponding to the high priority rule of the current file from the priority rearranged classification rule set, extracts the number string of the file identifier belonging to the category, splits out each structural level item field from the number, converts each level item into an integer value sequence according to the decimal encoding rule, and stores it in an ordered structural vector to generate a number level value vector group. The structural offset calculation submodule calls each level of numerical item in the numbered hierarchical numerical vector group, sets a decimal digit weight value for each item, performs the weight product of each item and sums the digits to obtain the weighted number total value, extracts the weighted value list of archived numbers, calculates the difference sequence between the current number weight value and the archived number values in the list, outputs the minimum number structure difference value, and generates the minimum number structure offset value. The archive block matching submodule queries the archive location block address range recorded in the number index table based on the number index value corresponding to the minimum number structure offset value, combines the block address with the attribution relationship identifier of the current archive category, determines the storage status, records the number path position that meets the registration requirements, and generates the archive classification archive block with registered number. The storage location extension module calls the registered numbered archive classification archiving block, determines whether the ratio of the total number of sub-numbered entries in the archiving block to the block capacity exceeds the numbered block overflow threshold, updates the numbered block boundary pointer, marks it as an extended state, and obtains the archive classification block identifier set with extended boundaries.
2. The intelligent archive classification and storage system according to claim 1, characterized in that, The optimized arrangement order of the original archive structure includes a character baseline position sequence, a text block reorganization structure, and character arrangement direction parameters. The priority rearranged classification rule set includes a rule level division list, a classification strategy index table, and a task scenario adaptation mapping group. The registered numbered archive classification archiving blocks include target numbered block addresses, numbering structure matching records, and archiving capacity allocation tables. The expanded boundary archive classification block identifier set includes expanded numbering boundary values, block merging status identifiers, and a set of newly added available directory locations.
3. The intelligent archive classification and storage system according to claim 2, characterized in that, The character layout parsing module includes: The text image acquisition submodule acquires the document text block in the scanned image, extracts the grayscale pixel values of the character region in the image matrix, performs binarization processing on the character edge according to the preset grayscale threshold, locates the rectangular boundary of the character block according to the set of white pixel coordinates in the binary image, extracts the geometric center coordinates of each character block, and generates a character center coordinate index sequence. The vertical alignment line extraction submodule detects the number of white pixels in the vertical center line pixel column of the character based on the vertical coordinate position of the corresponding character block in the character center coordinate index sequence, calculates the number of overlapping pixels in the vertical pixel column, and locates the vertical index interval where the maximum overlapping value is located. By using the average pixel density change within the maximum value interval, the main alignment line index position is calculated, and the character alignment reference vertical position value is generated. The character position reconstruction submodule calls the alignment line coordinates represented by the vertical position value of the character alignment reference, uses the coordinates as the reference position for rotation transformation, calculates the angle between the vertical coordinates of the characters in the character center coordinate index sequence and the alignment line coordinates, constructs a two-dimensional rotation matrix based on the obtained angle value, rotates and adjusts the original coordinate set and outputs a new coordinate sequence, and obtains the original file structure with optimized arrangement order.
4. The intelligent archive classification and storage system according to claim 3, characterized in that, The rule priority determination module includes: The rule triggering statistics submodule obtains the document type code, document creation date and keyword term set in the original structure of the archive after the arrangement order is optimized. For each classification rule in the archive record, it counts the number of times the rule is triggered and the number of misjudgments in the historical archive record, and generates a classification rule triggering statistics table. The adaptation rate calculation submodule calls the data on the number of classification rule triggers and the number of misjudgments in the classification rule trigger statistics table. By dividing the number of rule triggers by the total number of archived records, the adaptation rate of each classification rule is calculated, and a classification rule adaptation rate result set is generated. The rule priority reordering submodule calculates the score value of each rule based on the classification rule adaptation rate result set and the number of misjudgments in the classification rule trigger statistics table, sorts all rules from high to low based on the score value, adjusts the execution order of the classification rules, and obtains the classification rule set after priority reordering.
5. The intelligent archive classification and storage system according to claim 4, characterized in that, The specific formula for obtaining the score value of each rule is as follows: ; in, Representative Rules The rating value, Representative Rules The number of times it has been triggered in the history. Represents the total number of archived records. Representative Rules In the The number of misjudgments in each archived record This represents the average misjudgment value across all rules. This represents the total number of archived records.
6. The intelligent archive classification and storage system according to claim 1, characterized in that, The storage location extension module includes: The number capacity assessment submodule obtains the number of existing files, the maximum number of files that the block can hold, and the number of free directory bits in the current archive record corresponding to the registered numbered archive classification archive block. It calculates the ratio between the number of sub-number entries in the current block and the maximum number of files that can be held, and compares the ratio with the numbered block overflow threshold to determine whether the overflow status is valid and generates the numbered block overflow determination result. The archive block merging submodule extracts the block storage identifier of the adjacent physical location after the block based on the archive block marked as overflowing in the overflow determination result of the numbered block, and determines whether the adjacent block is in a pending allocation or idle state. If the condition is met, the current archive block and the empty area are merged in the logical address space to form a consecutive numbered storage segment, thus obtaining the numbered block logical merging structure. The boundary pointer update submodule calls the start and end values of the merged number boundary in the logical merging structure of the numbered blocks, rewrites the block boundary pointer table, replaces the original number ending position with the new number ending position in the current merged structure, adds an extended status identifier label and synchronizes the index status table content, and generates a set of file classification block identifiers with extended boundaries.
7. The intelligent archive classification and storage system according to claim 6, characterized in that, The overflow threshold for the numbered block is set by using the sum of the average and standard deviation of the maximum number of files that the current archive block can hold as the overflow threshold for the numbered block.
8. The intelligent archive classification and storage system according to claim 1, characterized in that, The system also includes an archive path generation module, which includes: The archive attribute extraction submodule obtains the target block address from the archive classification block identifier set of the extended boundary, extracts the number value, current physical storage sequence and physical address code of the archive to be processed in the archive cache pool, indexes the basic information of the target archive, and generates an archive attribute index set. The number difference sorting submodule calculates the literal difference between the numbers based on the target file number and the first number of the target block in the file attribute index set, sorts the numbers of the files to be processed according to the difference, and generates a number difference sorting list. The path selection and generation submodule calculates the displacement path length between each number and the target block based on the sorting result in the number difference sorting list and the physical path length of the archiving vehicle track. It selects the target number with the shortest displacement path as the archiving target to obtain the archive archiving path information. The archive archiving path information includes the target archive archiving path number, the equipment scheduling location table, and the path displacement sorting sequence.
Citation Information
Patent Citations
Intelligent archive filing system based on OCR
CN115116068A
Digital employee archive management method and system
CN118863795A