A method for scanning for borders in an image represented by pixels, the method including a first operation comprising: estimating an attribute for each of a first set of two adjacent pixel positions in the image; assessing whether a predetermined binary condition differs in respect of the two pixel positions, and if so determining that a border is present in the part of the image represented by pixels at those positions; and if a border is determined to be present in that part of the image, estimating the direction of the border as being perpendicular to a line joining the positions of the two pixels; and initiating tracing the border in that direction.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for finding borders in an image represented by pixels for processing of borders found in the image, the method including a first operation comprising: estimating an attribute for each of a first set of two adjacent pixel positions in the image; storing the estimated attributes for each of the two adjacent pixel positions of the first set; assessing whether a predetermined binary condition differs in respect of the first set of two adjacent pixel positions, the assessing step comprising determining the predetermined binary condition by comparing a scalar attribute of each of the first set of two adjacent pixel positions against a predetermined value, and if the predetermined binary condition differs in respect of the first set of two adjacent pixel positions determining that a border is present in a part of the image represented by pixels at those positions; and if a border is determined to be present in that part of the image, estimating a direction of the border as being perpendicular to a line joining the first set of two adjacent pixel positions; and initiating tracing the border in that direction, wherein tracing the border comprises steps of: selecting a second set of two adjacent pixel positions, each of those pixel positions being adjacent to a respective one of the two adjacent pixel positions of the first set and offset from that pixel position of the first set in the estimated direction; estimating an attribute for each of the two adjacent pixel positions of the second set; estimating a new direction of the border in dependence on the estimated attributes of the second set of two adjacent pixel positions and the stored estimated attributes of the first set of two adjacent pixel positions; and subsequently further tracing the border; the method further comprising storing as part of a set of locations representing a location of the border in the image the location where a linear interpolation of position with respect to the scalar attributes of the two adjacent pixel positions of the first set intersects a predetermined value.
2. The method as claimed in claim 1 , comprising deeming the border to pass between the two adjacent pixel positions of the first set.
3. The method as claimed in claim 1 , comprising storing as part of the set of locations representing a location of the border in the image the mean of the two adjacent pixel positions of the first set.
4. The method as claimed in claim 1 , wherein the first and second sets of two adjacent pixel positions together represent a contiguous block of four pixel positions and the new direction of the border is determined such that it is perpendicular to a line joining two pixel positions of the contiguous block of four pixel positions in respect of which the predetermined binary condition differs, at least one of those two pixel positions being a pixel position of the second set.
5. The method as claimed in claim 4 , comprising, if the predetermined binary condition for one of the pixel positions of the second set of two adjacent pixel positions differs from the predetermined binary condition for both of the pixel positions of the contiguous block of four pixel positions that are adjacent to the one of the pixel positions of the second set of two adjacent pixel positions, estimating the new direction to be offset by 90 ° to a previously estimated border direction, the offset being in a rotational direction determined in accordance with a predetermined bias.
6. The method as claimed in claim 1 , wherein the step of further tracing the border comprises repeating steps of: forming a contiguous block of four pixel positions comprising (i) a maintained set of two pixel positions selected from a block of four pixel positions formed in a previous iteration and (ii) a new set of two adjacent pixel positions, each of the two adjacent pixel positions of the new set being adjacent to a respective one of the pixel positions of the maintained set and offset from that respective pixel position of the maintained set in the direction estimated in the previous iteration; estimating an attribute for each of the two adjacent pixel positions of the new set; and estimating a new direction of the border in dependence on the attributes of the new set of two adjacent pixel positions.
7. The method as claimed in claim 6 , wherein in each iteration of the steps of claim 6 the new direction of the border is determined such that it is perpendicular to a line joining two pixel positions of the contiguous block of four pixel positions formed in that iteration in respect of which the predetermined binary condition differs, at least one of those two pixel positions being a pixel position of the new set of two adjacent pixel positions.
8. The method as claimed in claim 6 , comprising repeating the steps of claim 6 multiple times, so as to circuit the border.
9. The method as claimed in claim 8 , comprising after having circuited the border selecting two adjacent pixel positions outside the border and repeating the first operation for those pixel positions.
10. The method as claimed in claim 1 , wherein the attribute of each pixel position is dependent on data defining the image as represented in a plurality of pixels neighbouring that pixel position.
11. The method as claimed in claim 1 , wherein the attribute of each pixel position is based on a weighted sum of a value of the pixel at that position and plurality of pixels neighbouring that pixel position.
12. The method as claimed in claim 1 , wherein the attribute of each pixel position is based on a Laplacian of Gaussian filter applied to the image and centred on the pixel position.
13. The method as claimed in claim 1 , wherein the attribute of each pixel position is based on an estimation of a second-order derivative of an isotropic Gaussian convolution applied to one or more visual attributes of pixels of the image with respect to a direction of a gradient of the isotropic Gaussian convolution.
14. The method as claimed in claim 13 , wherein the one or more visual attributes include luminance and/or chrominance.
15. The method as claimed in claim 1 , wherein the first operation comprises: if a border is not determined to be present in that part of the image initiating a further iteration of the first operation for two adjacent pixel positions offset in a predetermined direction from the first set of two adjacent pixel positions of a present iteration.
16. A device for finding borders in an image represented by pixels for processing of borders found in the image, the device comprising a processor configured to receive the image, the device further being configured to perform operations comprising: estimating an attribute for each of a first set of two adjacent pixel positions in the image; storing the estimated attributes for each of the two adjacent pixel positions of the first set; assessing whether a predetermined binary condition differs in respect of the first set of two adjacent pixel positions, the assessing step comprising determining the predetermined binary condition by comparing a scalar attribute of each of the first set of two adjacent pixel positions against a predetermined value, and if the predetermined binary condition differs in respect of the first set of two adjacent pixel positions determining that a border is present in a part of the image represented by pixels at those positions; and if a border is determined to be present in that part of the image, estimating a direction of the border as being perpendicular to a line joining the first set of two adjacent pixel positions; and initiating tracing the border in that direction, the device being configured to trace the border by: selecting a second set of two adjacent pixel positions, each of those pixel positions being adjacent to a respective one of the two adjacent pixel positions of the first set and offset from that pixel position of the first set in the estimated direction; estimating an attribute for each of the two adjacent pixel positions of the second set; estimating a new direction of the border in dependence on the estimated attributes of the second set of two adjacent pixel positions and the stored estimated attributes of the first set of two adjacent pixel positions; and subsequently further tracing the border: the operations further comprising storing as part of a set of locations representing a location of the border in the image the location where a linear interpolation of position with respect to the scalar attributes of the two adjacent pixel positions of the first set intersects a predetermined value.
17. The device as claimed in claim 16 , the device being configured to further trace the border by repeating steps of: forming a contiguous block of four pixel positions comprising (i) a maintained set of two pixel positions selected from a block of four pixel positions formed in a previous iteration and (ii) a new set of two adjacent pixel positions, each of the two adjacent pixel positions of the new set being adjacent to a respective one of the pixel positions of the maintained set and offset from that respective pixel position of the maintained set in the direction estimated in the previous iteration; estimating an attribute for each of the two adjacent pixel positions of the new set; and estimating a new direction of the border in dependence on the attributes of the new set of two adjacent pixel positions.
18. The device as claimed in claim 16 , wherein the device comprises a camera and the image is derived from the camera.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
May 13, 2015
May 19, 2020
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.