Image processing device
The image processing device efficiently adjusts feature points by dividing and combining image regions, calculating scores, and selectively deleting points, addressing the challenge of maintaining limited feature points per region.
Patent Information
- Application Number
- JP2024059912
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-03
- Publication Date
- 2025-10-16
AI Technical Summary
Existing image processing techniques struggle to efficiently adjust the number of feature points across an entire image, as they require maintaining a limited number within each divided region.
An image processing device that detects feature points, calculates scores, and thins them out by dividing the image into small regions, combining adjacent regions, and selectively deleting feature points based on scores until a preset condition is met.
Enables efficient thinning of feature points while adjusting their number across the entire image, ensuring optimal distribution and reducing processing time.
Smart Images

Figure 2025157722000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to an image processing device that performs a process of thinning out feature points. [Background technology]
[0002] Patent Document 1 discloses an image processing device that performs a feature point thinning process. This image processing device divides an image into multiple regions and thins out feature points in each divided region so that the number of feature points is within a preset feature point limit. In this process, feature points are thinned out in descending order of reliability. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2012-234258 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the above-mentioned conventional techniques have the problem that it is difficult to efficiently adjust the number of feature points in the entire image because the number of feature points in each divided region must be kept within a limited number. Therefore, a technique is desired that can efficiently perform thinning processing while adjusting the number of feature points in the entire image. [Means for solving the problem]
[0005] According to one embodiment of the present disclosure, there is provided an image processing device (100). The image processing device includes a feature point detection unit (110) that detects a plurality of feature points from an image, a score calculation unit (120) that calculates a feature point score for each of the plurality of feature points, and a thinning processing unit (130) that thins out the plurality of feature points using the feature point scores. The thinning processing unit is configured to perform the following processes: (a) dividing the image into a plurality of initial small regions; (b) generating a plurality of combined regions by combining N × M adjacent small regions, where one of N and M is an integer greater than or equal to 1 and the other is an integer greater than or equal to 2; (c) selecting Q feature points from the feature points present in each combined region in descending order of feature point score, where Q is an integer greater than or equal to 1, and deleting the remaining feature points from the combined region; and (d) treating the plurality of combined regions as new small regions and repeating the thinning steps of processes (b) and (c) until a preset termination condition is met.
[0006] According to this image processing device, feature points are thinned out while small regions are combined, so that thinning can be performed efficiently while adjusting the number of feature points in the entire image. [Brief explanation of the drawings]
[0007] [Figure 1] FIG. 1 is a block diagram showing the configuration of an image processing apparatus according to an embodiment. [Figure 2] 4 is a flowchart showing the procedure of a thinning process in the first embodiment. [Figure 3] FIG. 2 is an explanatory diagram showing an example of an image to be processed. [Figure 4] FIG. 10 is an explanatory diagram showing an example of a feature point map including a plurality of detected feature points. [Figure 5] FIG. 10 is an explanatory diagram showing a feature point map initially divided into a plurality of small regions. [Figure 6] FIG. 10 is an explanatory diagram showing a feature point map after the first thinning step is executed. [Figure 7] FIG. 10 is an explanatory diagram showing a feature point map after a second thinning step is executed. [Figure 8] FIG. 2 is a block diagram showing the configuration of a thinning processing unit applicable to the first embodiment. [Figure 9] 10 is a flowchart showing the procedure of a thinning process in the second embodiment. [Figure 10] FIG. 10 is an explanatory diagram showing a restored feature point map composed of restored small regions. [Figure 11] FIG. 10 is an explanatory diagram showing the sorting order of restored combined regions. [Figure 12] FIG. 10 is an explanatory diagram showing a feature point map after adjustment thinning processing. [Figure 13] FIG. 10 is a block diagram showing the configuration of a thinning processing unit applicable to the second embodiment. [Figure 14] 10 is a flowchart showing the procedure of a thinning process in the third embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0008] A. First embodiment: As shown in FIG. 1, the image processing device 100 of the first embodiment includes a feature point detection unit 110, a score calculation unit 120, a thinning unit 130, an input buffer 140, and an output buffer 150.
[0009] The feature point detection unit 110 executes a process of detecting multiple feature points CP from an image IM input from an external device via an input buffer 140. Examples of algorithms that can be used to detect feature points CP include Harris corner detection, Shi-Tomasi corner detection, GFTT, SIFT, SURF, FAST, AKAZE, and ORB. The score calculation unit 120 calculates a feature point score for each of the multiple feature points CP. The feature point score is an index indicating the reliability of the feature point CP. Examples of feature point scores that can be used include Harris corner scores and Shi-Tomasi corner scores. The thinning processing unit 130 thins out the multiple feature points CP using the feature point scores. The multiple feature points CP after the thinning process are output to an external device via an output buffer 150.
[0010] The image processing device 100 can be implemented as a hardware circuit. Alternatively, the functions of the image processing device 100 may be implemented as a computer program. That is, the functions of the image processing device 100 may be realized by a processor executing the computer program. However, if the image processing device 100 is configured as a hardware circuit, thinning processing can be performed at higher speed.
[0011] As shown in FIG. 2, in the first step S11 of the thinning process, the feature point detection unit 110 detects multiple feature points CP from the image IM. FIG. 3 shows an example of the image IM, and FIG. 4 shows the detected multiple feature points CP. The image IM has a width of W pixels and a height of H pixels. In the example of FIG. 4, 36 feature points CP are detected throughout the entire image. An image region containing multiple feature points CP is called a "feature point map CM." The feature point map CM has the same size as the original image IM. Note that the "0" at the end of the symbol for the feature point map CM0 in FIG. 4 indicates that this is an initial map. Note that in the following description, the feature point map CM may also be called an "image."
[0012] 2, the score calculation unit 120 calculates the feature point score for each of the plurality of feature points CP. In step S13, the thinning unit 130 divides the image IM to set initial small regions.
[0013] 5, when step S13 is executed, the feature point map CM0 is equally divided into a plurality of initial small regions SR0. The "0" at the end of the code of the small region SR0 indicates that it is the initially set small region SR.
[0014] In this embodiment, the number of divisions in the width direction Dw and the number of divisions in the height direction Dh in step S13 are set according to the following equations. Dw=j×2 p (q1) Dh=k×2 p (q2) Here, j and k are integers greater than or equal to 1, and p is an integer greater than or equal to 2. However, it is preferable that the integer p is greater than or equal to 3.
[0015] In the example of FIG. 5, j = 2, k = 1, and p = 4. When the width of the image IM is W pixels and the height is H pixels, the width Sw of the initial small region SR0 is equal to W / (2×2 4 ), and the height Sh is equal to H / (1×2 4 ). The dashed line drawn at the center in the width direction of FIG. 5 indicates that j = 2, that is, the horizontal width of the image IM is divided into two parts.
[0016] In this embodiment, in the thinning step described later, 2×2 small regions SR are combined to form one combined region, and thinning is performed within each combined region. In order to repeatedly execute such a thinning step, it is preferable to set the integers j, k, and p in the above equations (q1) and (q2) according to any of the following setting methods.
[0017] <Setting method M1 of integers j, k, p> When the width of the image IM is W pixels and the height is H pixels, The integer p is the minimum value of the largest integer n such that 2 n <is equal to W, and the largest integer m such that 2 m <is equal to H, The integer j is the largest integer such that j×2 p <is equal to W, The integer k is the largest integer such that k×2 p <is equal to H. For example, when W = 1241 and H = 376, j = 3, k = 1, and p = 8. Also, when W = 512 and H = 512, j = 2, k = 2, and p = 8. According to this setting method M1, the image IM can be appropriately divided so that each of the initial plurality of small regions SR0 has a size larger than 1 pixel and not more than 2×2 pixels.
[0018] <Setting method M2 of integers j, k, p> When the width of the image IM is W pixels and the height is H pixels, The integer p is 2 nThe maximum integer n such that n ≤ W, and 2 m The minimum value among the maximum integer m such that m ≤ H and 2, The integer j is the maximum integer such that j × 2 p ≤ W, The integer k is the maximum integer such that k × 2 p ≤ H. This setting method M2 corresponds to replacing the inequality sign "<" in the setting method M1 with the inequality sign "≤" with an equal sign. In this setting method M2, when W = 1241 and H = 376, j = 3, k = 1, and p = 8. Also, when W = 512 and H = 512, j = 1, k = 1, and p = 9. According to this setting method M2, the image IM can be appropriately divided so that each of the initial plurality of small regions SR0 has a size of 1 or more pixels and less than 2 × 2 pixels.
[0019] <Setting method M3 for integers j, k, p> When the width of the image IM is W pixels and the height is H pixels, The integer p is 2 n The maximum integer n such that n ≤ W, and 2 m The minimum value among the maximum integer m such that m ≤ H and a preset maximum allowable value pmax, The integer j is the maximum integer such that j × 2 p ≤ W, The integer k is the maximum integer such that k × 2 p ≤ H. This setting method M3 is obtained by adding the maximum allowable value pmax as a candidate value for the integer p in the above-described setting method M1. According to this setting method M3, the image IM can be appropriately divided so that the number of thinning steps does not become excessively large.
[0020] <Setting method M4 for integers j, k, p> When the width of the image IM is W pixels and the height is H pixels, The integer p is 2 n The maximum integer n such that n ≤ W, and 2 m The minimum value among the maximum integer m such that m ≤ H and a preset maximum allowable value pmax, The integer j is the maximum integer such that j × 2 pis the largest integer ≦W, The integer k is k×2 p is the largest integer such that H. This setting method M4 is the same as the setting method M2 described above, except that it adds a maximum allowable value pmax as a candidate value for the integer p. According to this setting method M4, the image IM can be appropriately divided so that the number of thinning steps does not become excessively large.
[0021] In the above-described setting methods M1 and M2, the number of divisions Dw=j×2 is set so that the size of the divided small region SR0 is 1 pixel or more and 2×2 pixels or less. p ,Dh=k×2 p In this embodiment, the setting method M2 is used.
[0022] 2 are processes for thinning out the feature points CP executed by the thinning unit 130. Hereinafter, these two steps S14 and S15 will be collectively referred to as a "thinning out step S20."
[0023] In step S14, the thinning unit 130 generates one combined region by combining N×M small regions SR that are adjacent to each other for the entire image. One of N and M is an integer greater than or equal to 1, and the other is an integer greater than or equal to 2. In this embodiment, N=M=2 is used. That is, one combined region is generated by combining 2×2 adjacent small regions SR.
[0024] The above-mentioned formulas (q1) and (q2) represent the number of divisions in the width direction Dw and the number of divisions in the height direction Dh when N = M = 2. The formulas generalized to take into account cases other than N = M = 2 are as follows: Dw=j×N p (q3) Dh=k×M p (q4) Here, j and k are integers of 1 or more, and p is an integer of 2 or more. However, it is preferable that the integer p is 3 or more.
[0025] Even when using these equations (q3) and (q4), the above-described setting methods M1 to M4 for the integers j, k, and p can be similarly applied. However, in setting method M1, " n <W", " m <H", " n <W", " m <H" are preferably replaced with " n <W", " m <H", " n <W", " m <H" respectively. The same applies to the other setting methods M2 to M4. Further, if setting methods M1 and M2 are generalized to include cases other than M = N = 2, the number of divisions Dw = j × N p , Dh = k × M p are used to divide the image so that the size of the small region SR0 after division is at least 1 pixel and at most N × M pixels. As described above, in this embodiment, M = N = 2.
[0026] As shown in FIG. 6, in the first step S14, the small regions SR0 shown in FIG. 5 are combined in groups of 2 × 2 to generate a combined region MR1. In the feature point map CM0 of FIG. 5, the entire image is equally divided by the number of divisions Dw and Dh given by the above equations (q1) and (q2), so that 2 × 2 small regions SR0 can be efficiently combined over the entire image.
[0027] In step S15, the thinning processing unit 130 deletes other feature points while leaving Q feature points CP in each combined region MR1 in descending order of the feature point scores. Q is an integer of 1 or more. In this embodiment, Q = 1 is used. That is, in each combined region MR1, one feature point CP with the largest feature point score is selected, and other feature points are deleted. As shown in FIG. 6, after the execution of the first step S15, 3 feature points CP are deleted, and the total number of feature points in the entire image becomes 33. The "1" at the end of the sign of this feature point map CM1 indicates that it is the feature point map CM after the execution of the first thinning step S20. The combined region MR1 of this feature point map CM1 is used as the small region SR1 in the second thinning step S20 described later.
[0028] In step S16 of Fig. 2, the thinning unit 130 determines whether the number of feature points has become equal to or less than a target number. In this embodiment, the target number is 30. In the example of Fig. 6, the number of feature points is 33, which is greater than the target number, so the process returns to step S14, and the thinning step S20 is executed again.
[0029] As shown in Fig. 7, in the second iteration of step S14, the 2 × 2 small regions SR1 shown in Fig. 6 are combined to generate a combined region MR2. In addition, in the second iteration of step S15, in each combined region MR2, all feature points except for one feature point CP with the highest feature point score are deleted. The number of feature points in the feature point map CM2 obtained in this way is 20.
[0030] After the second execution of step S15, the determination in step S16 shows that the number of feature points is 20, which is less than the target number of 30, and therefore the processing in FIG. 2 is terminated.
[0031] The termination condition for the thinning process may be different from the termination condition used in step S16. For example, it is possible to use a termination condition that "thinning step S20 has been performed a predetermined number of times." Alternatively, it is possible to use a termination condition that either a first condition that "the number of feature points is equal to or less than a first target number" or a second condition that "the number of feature points is equal to or less than a second target number and region merging has been performed a predetermined number of times" is met. In this case, it is preferable to set the second target number to a value greater than the first target number. In these various termination conditions, the "number of non-sky regions" may be used instead of the "number of feature points." Here, a "non-sky region" refers to a small region or a combined region that includes one or more feature points CP.
[0032] As shown in FIG. 8, the thinning processing unit 130 may be configured to include a thinning step execution unit 131 and two thinning processing buffers 132 and 133. Each of the thinning processing buffers 132 and 133 is a buffer memory. The thinning step execution unit 131 executes the thinning step S20 by alternately using the two thinning processing buffers 132 and 133. That is, in each thinning step S20, data is read from one thinning processing buffer and the result is written to the other thinning processing buffer. Using such a configuration allows efficient thinning processing using two buffer memories. Furthermore, the configuration shown in FIG. 8 is suitable for implementing the thinning processing unit 130 as a hardware circuit.
[0033] The plurality of feature points CP as the final processing result of the thinning processing can be read out from either of the two thinning processing buffers 132, 133 and output to an external device. For example, when the final processing result is stored in the first thinning processing buffer 132, the plurality of feature points CP stored in this first thinning processing buffer 132 may be output to an external device. Alternatively, of the processing results stored in the two thinning processing buffers 132, 133, the processing result having the number of feature points closest to the target number may be output to an external device.
[0034] According to the first embodiment described above, the thinning step S20 of combining a plurality of small regions SR and deleting some of the feature points CP is repeatedly performed, so that thinning can be performed efficiently while adjusting the number of feature points in the entire image.
[0035] B. Second embodiment: 9 is obtained by changing step S16 in FIG. 2 to step S16a and adding steps S21 to S27 thereafter, but the other steps are the same as those in the first embodiment. The overall configuration of the image processing device 100 shown in FIG. 1 can also be applied to the second embodiment.
[0036] In step S16a, the thinning unit 130 determines whether the number of feature points is less than the target number. In the second embodiment, as in the first embodiment, the target number is set to 30. If the number of feature points is less than the target number, the process proceeds to step S22, which will be described later. On the other hand, if the number of feature points is equal to or greater than the target number, the process proceeds to step S21.
[0037] In step S21, the thinning unit 130 determines whether the number of feature points is equal to the target number. If the number of feature points is equal to the target number, the processing in Fig. 9 ends. On the other hand, if the number of feature points is not equal to the target number, the number of feature points is greater than the target number, so the processing returns to step S14, and the processing from step S14 onwards is executed again.
[0038] As shown in FIG. 7, the number of feature points in the feature point map CM2 after the second execution of step S15 is 20, which is less than the target number, so the process proceeds from step S16a to step S22.
[0039] In step S22, the thinning unit 130 acquires the small regions SR and feature points CP before the final thinning step S20 as restored small regions and restored feature points. The prefix "restored" means the processing result before the first thinning step S20. For example, if the processing result before the final thinning step S20 is the feature point map CM1 shown at the bottom of FIG. 6, the multiple small regions SR1 and multiple feature points CP included in the feature point map CM1 are acquired as restored small regions and restored feature points, respectively. For example, if the feature point map CM1 is stored in the first thinning processing buffer 132 of the two thinning processing buffers 132 and 133 shown in FIG. 8, the multiple restored small regions and multiple restored feature points can be obtained by reading the multiple small regions SR1 and multiple feature points CP from the first thinning processing buffer 132.
[0040] As shown in FIG. 10, a restored feature point map CM1r composed of a plurality of restored small regions SR1r has the same configuration as the feature point map CM1 shown in FIG.
[0041] In step S23, the thinning unit 130 sorts the multiple combined regions MR after the processing in the last executed step S14 in order of the number of feature points CP. For example, when step S23 is executed after the second thinning steps S14 and S15 shown in FIG. 7 are executed, sorting is performed on the multiple combined regions MR2 shown in FIG. 7. In this embodiment, sorting is preferably performed in order of the number of feature points CP. The reason for this is to delete feature points CP present in areas with few feature points CP and to maintain areas where feature points CP are concentrated as much as possible. The combined regions MR2 to be sorted correspond to the multiple combined regions after the processing in the final thinning step. These combined regions MR2 can be read out, for example, from the second thinning processing buffer 133.
[0042] In the example of FIG. 11, multiple combined regions MR2 are sorted in ascending order of the number of feature points CP. However, combined regions MR2 that do not have any feature points CP are excluded from the sorting. The numbers "#1" to "#20" assigned within each combined region MR2 are ordinal numbers indicating the sorting order. The sorting order of combined regions MR2 that have the same number of feature points CP is determined according to a preset scanning order. In the example at the bottom of FIG. 11, for the sake of explanation, the sorting order of the combined regions MR2 is added to a restored feature point map CM1r composed of multiple restored small regions SR1r.
[0043] 9 are adjusted thinning steps executed by the thinning processor 130. Hereinafter, these three steps S24 to S26 will be collectively referred to as "adjusted thinning step S30."
[0044] In step S24, the thinning unit 130 selects one combined region MR2 (FIG. 11). The combined region MR2 is preferably selected in the sorted order obtained in step S23. However, the combined region MR2 may be selected randomly. Alternatively, the combined region MR2 may be selected in accordance with the order of its arrangement. When the combined region MR2 is selected without using the sorted order, the above-mentioned step S23 can be omitted.
[0045] In step S25, the thinning unit 130 combines N×M restoration small regions SR1r (FIG. 11) corresponding to the selected combined region MR2. In the second embodiment, N=M=2 is used, as in the first embodiment.
[0046] In step S26, the thinning unit 130 leaves Q feature points CP in descending order of score for a restored combined region MR2r (FIG. 12) formed by combining N×M restored small regions SR1r, and deletes the other feature points CP. In the second embodiment, Q=1 is used, as in the first embodiment.
[0047] The difference is that the thinning step S20, which is made up of steps S14 and S15, is performed on the entire image, whereas the adjustment thinning step S30, which is made up of steps S24 to S26, is performed on a set of N × M restoration small regions SR1r. This adjustment thinning step S30 makes it possible to perform local adjustment so that the number of feature points approaches the target number of points.
[0048] In step S27, the thinning unit 130 determines whether the number of feature points has become equal to or less than the target number. In the second embodiment, as in the first embodiment, the target number is set to 30. If the number of feature points is greater than the target number, the process returns to step S24, and the adjusted thinning step S30 is executed again. If the number of feature points has become equal to or less than the target number, the process of FIG. 9 ends.
[0049] As shown in Fig. 12, in the feature point map CMf after the processing in Fig. 9 is completed, the merging of restored small regions SR1r and the deletion of feature points CP have been performed for the 12 combined regions MR2 up to #12 in the sorting order. As a result, the number of feature points is equal to the target number of 30. Furthermore, the regions that make up the feature point map CMf are a mixture of multiple restored small regions SR1r and multiple restored combined regions MR2r.
[0050] As described above, in the second embodiment, the entire image IM is divided using a plurality of types of regions SR1r, MR2r of different sizes, and in each of these regions SR1r, MR2r, the feature points CP are thinned out so that the number of feature points is equal to or less than Q. As a result, the thinning process can be performed efficiently so that the number of feature points CP approaches the target number.
[0051] As shown in FIG. 13, the thinning processing unit 130 applicable to the second embodiment is obtained by adding an adjusted thinning execution unit 134 and a sort buffer 135 to the thinning processing unit 130 applicable to the first embodiment shown in FIG. 8.
[0052] The adjusted thinning execution unit 134 is configured to execute the processes of steps S22 to S27 in Fig. 9. The sort buffer 135 is used when executing the process of step S23. That is, the sort order of the combined region MR determined by the sorting of step S23 is stored in the sort buffer 135. By using such a configuration, the thinning step S20 and the adjusted thinning step S30 can be executed efficiently using two buffer memories. Furthermore, the configuration shown in Fig. 13 is suitable for implementing the thinning processing unit 130 as a hardware circuit.
[0053] The second embodiment also provides the same effects as the first embodiment. Furthermore, in the second embodiment, by repeatedly executing the adjusted thinning step S30, it is possible to bring the number of feature points closer to the target number.
[0054] C. Third embodiment: The thinning processing procedure shown in Fig. 14 is the same as that of the second embodiment, except that step S15 in Fig. 9 is changed to step S15a, step S31 is added between step S14 and step S15a, and step S16a in Fig. 9 is omitted. The other steps are the same as those of the second embodiment. The overall configuration of the image processing device 100 shown in Fig. 1 and the configuration of the thinning processing unit 130 shown in Fig. 13 are the same as those of the second embodiment. In the third embodiment, the number Q of feature points after thinning in each combined region MR is set to 1.
[0055] In step S31, the thinning unit 130 determines whether the number of non-sky regions is less than the target number. Here, "non-sky region" refers to a small region SR or a combined region MR that includes one or more feature points CP. In step S31, the "number of non-sky regions" can be obtained by calculating the number of combined regions MR that include one or more feature points CP. The "target number" is the target number of feature points, which is 30 in this embodiment. For example, in the feature point map CM1 after the second execution of step S14 shown in FIG. 7 described above, the number of combined regions MR2, which is the number of non-sky regions, is 20, which is less than the target number of 30.
[0056] If the number of non-empty regions is less than the target number, the process proceeds to step S22 described in the second embodiment. On the other hand, if the number of non-empty regions is equal to or greater than the target number, the process proceeds to step S15a.
[0057] In step S15a, the thinning unit 130 leaves one feature point CP in each combined region MR1 in descending order of feature point score and deletes the other feature points. This step S15a corresponds to step S15 in FIG. 9 where the integer Q is set to 1.
[0058] In step S15a of the third embodiment, one feature point CP is left in each combined region MR in descending order of feature point score, and the other feature points are deleted. Therefore, the number of non-sky regions obtained in step S31 is equal to the number of feature points after execution of step S15a. Therefore, at the point in step S31 before actually executing step S15a, it is possible to determine whether the number of feature points CP will be reduced below a predetermined target number as a result of the thinning steps S14 and S15a. The other steps of the third embodiment are the same as those of the second embodiment, and therefore their explanation will be omitted.
[0059] The third embodiment also has the same effects as the first and second embodiments. Furthermore, in the third embodiment, before executing step S15a for deleting feature points CP, it is possible to determine whether the number of feature points CP will be less than a preset target number through the processing of thinning steps S14 and S15a, which has the advantage of being able to omit unnecessary processing.
[0060] The present disclosure is not limited to the above-described embodiment and its modifications, and can be implemented in various forms without departing from the spirit and scope of the present disclosure. [Explanation of symbols]
[0061] 100... image processing device, 110... feature point detection unit, 120... score calculation unit, 130... thinning processing unit, 131... thinning step execution unit, 132... thinning processing buffer, 133... thinning processing buffer, 134... adjusted thinning execution unit, 135... sort buffer, 140... input buffer, 150... output buffer
Claims
1. An image processing device (100), a feature point detection unit (110) that detects a plurality of feature points from an image; a score calculation unit (120) that calculates a feature point score for each of the plurality of feature points; a thinning processing unit (130) that thins out the plurality of feature points using the feature point scores; Equipped with The thinning processing unit (a) dividing the image into an initial plurality of sub-regions; (b) generating a plurality of combined regions by combining the N×M adjacent small regions, where one of N and M is an integer equal to or greater than 1 and the other is an integer equal to or greater than 2; (c) selecting Q feature points from among the feature points present in each of the plurality of combined regions in descending order of feature point score, where Q is an integer equal to or greater than 1, and deleting the other feature points from the combined region; (d) repeating the thinning steps of the processes (b) and (c) by treating the plurality of combined regions as new plurality of small regions until a preset termination condition is met; 11. An image processing device configured to:
2. 2. The image processing device according to claim 1, the process (a) includes a process of setting the initial small regions by dividing the height and width of the image using a division number Dw in the width direction of the image and a division number Dh in the height direction of the image, respectively; When j and k are integers of 1 or more and p is an integer of 2 or more, Dw = j × N p , Dh=k×M p The image processing device is set to:
3. 3. The image processing device according to claim 2, The integers N and M are each 2, and the integer Q is 1; Dw = j x 2 p , Dh=k×2 p That is, an image processing device.
4. 4. The image processing device according to claim 3, When the width of the image is W pixels and the height of the image is H pixels, The integer p is 2 n < W, and the largest integer n such that 2 m and m is the maximum integer such that m is less than H, The integer j is j×2 p <W, and the integer k is k×2 p <H.
5. 4. The image processing device according to claim 3, When the width of the image is W pixels and the height of the image is H pixels, The integer p is 2 n The largest integer n such that W≦W, and 2 m and a maximum integer m such that H≦H, The integer j is j×2 p ≦W, and the integer k is k×2 p 2. An image processing device, wherein H is the largest integer such that ...
6. 6. The image processing device according to claim 4, The image processing device, wherein the plurality of candidate values further includes a preset maximum allowable value.
7. 2. The image processing device according to claim 1, When the number of feature points remaining in the entire image becomes smaller than a predetermined target number by the processing of a final thinning step, which is the thinning step executed last, the thinning processing unit: (e1) a process of acquiring the plurality of small regions and the plurality of feature points before the final thinning step as a plurality of restored small regions and a plurality of restored feature points; (e2) selecting one of the plurality of combined regions after the final thinning step; (e3) generating a new combined region by combining the N×M restored small regions corresponding to the selected combined region; (e4) selecting Q restored feature points from the restored feature points present in the new combined region in descending order of feature point score, and deleting the other restored feature points from the new combined region; (e5) repeating the steps (e2) to (e4) until the remaining number of the restored feature points becomes equal to or less than the target number; 11. An image processing device configured to:
8. 8. The image processing device according to claim 7, The thinning processing unit two buffer memories for storing the plurality of small regions; An image processing device that performs the process (b) in each thinning step by reading the N x M small areas before the combination from one of the two buffer memories and writing the combined area after the combination to the other buffer memory.
9. 9. The image processing device according to claim 8, The thinning processing unit The process (e1) is performed by reading the plurality of small regions from a first buffer memory of the two buffer memories that was used for reading in the final thinning step; The selection in the process (e2) is performed using the plurality of combined regions stored in a second buffer memory of the two buffer memories; an image processing device that executes the steps (e3) to (e5) by reading out the N×M restored small regions corresponding to the selected combined region from the first buffer memory;
Citation Information
Patent Citations
Image processing device, image processing method, and program
JP2012234258A