Computer-implemented method and system for fur identification including scales

The fur images of reptiles are captured through smart phones, and the fur recognition feature data set is established using the scale surface recognition method, which solves the problem of fur life cycle tracking and identification, and realizes the authenticity and traceability of fur products.

CN115004258BActive Publication Date: 2025-06-06UNICA SYST INC
View PDF 22 Cites 0 Cited by

Patent Information

Application Number
CN202180010672.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-01-31
Filing Date
2021-02-01
Publication Date
2025-06-06
Estimated Expiration
2041-02-01

AI Technical Summary

Technical Problem

The prior art is difficult to effectively track and identify the entire life cycle of reptile fur, especially during its conversion into a final product, and traditional methods have problems with forgery and identification.

Method used

By capturing the appearance image of reptile fur with smart phones and other devices, the scale surface recognition method is used, including edge feature detection, scale edge candidate determination, scale voting accumulation and other steps, to establish a unique identification feature data set of fur and store it in a database to achieve fur tracking and tracking.

Benefits of technology

It realizes unique identification and tracking of reptile fur, prevents forgery, improves the transparency and management efficiency of the supply chain, and ensures the authenticity and traceability of fur products.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115004258B_ABST
    Figure CN115004258B_ABST
Patent Text Reader

Abstract

A computer-implemented method for identifying fur including scales (6), particularly reptile fur, comprises the following steps: acquiring at least one image of the fur portion to be identified; detecting features corresponding to the boundaries (69, 70) of the scales (6) in the image; establishing a graph of the positions of the detected scales in a repeating pattern; determining the contours of the detected scales (6); and representing the detected scales (6) based on their contours (69, 70); determining identification feature data of the detected scales (6) for traceable identification of fur including scales, wherein the detection of the scales is based on scan lines (61).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a computer-implemented method and system for fur identification including scales, particularly reptile fur identification, from pictures taken by a smartphone camera or scanner under various environmental conditions.

[0002] The present invention relates to the authentication and identification of animal skins, in particular shingle skins, with the possibility of tracking them through global trade channels. The tracking and tracing process encompasses the complete life cycle of the animal skin, with all relevant data available in real time and globally. Prior art

[0003] The protection of documents and objects against all forms of counterfeiting crimes is a universal and growing need of manufacturers of original products, national publishers of identity documents and other organizations. Closely related to identity is the concept of authenticity. In the case of documents, authenticity represents the authenticity of the associated document. For the application field that focuses on the tracking of objects and living beings, identity and authenticity are closely interrelated. Essentially, in the narrow sense of the word, the tracking of objects (tracking and tracing) revolves around the identity of these objects, the uniqueness of which is determined by a series of special properties that cannot be cloned. The task of traceability of individual objects to the subject has the authenticity of the accompanying documents of physical and digital nature - and therefore the authenticity - as a common basis. The subject of the present invention is a method for tracking and tracing a reptile skin from the birth of the animal to the final product made of its skin. In the sense of the present invention, identity and authenticity are considered equivalent and, due to their mutual dependence, they are mentioned interchangeably or in combination. In a broader sense, the terms tracking and tracing include the traceability of structurally identical but respectively different objects. This is the case, for example, in the following successfully implemented method: this method makes it possible to track a product line through a trade channel by deterministic changes in the product identification vector map as disclosed in EP 2 614 486 B1. Methods that make the identity of individual objects at the item level accessible and measurable are called fingerprint methods. For this purpose, on the one hand, natural random microstructures as in EP 2 257 909 B1 or artificially introduced (pseudo-random) microstructures as shown in US 7,684,088 B2 have been tried.

[0004] In the case of tracking and tracing of living things, the random properties of living things are formalized in some way. This process is called biometrics, whereby random properties - in particular properties that are visually or acoustically available - are converted into technically detectable structures, quasi-templates as the basis for identification. This inevitably involves simplifying the complex combination of random properties into simpler structural elements in order to make the biometrics technically manageable. For example, facial recognition evaluates visual metrics of the face by eye distance, distance from nose to upper lip, etc. Other biometric techniques rely on fingerprints, the shape of the retina or voice signatures. Depending on the application, the biometrics must be adjusted. In order to verify the identity of reptiles, for example, facial recognition is quite unsuitable. In addition, biometric applications must take into account the life cycle of the organism. Successful facial recognition is practically impossible, and if so, the identity should be checked over the life cycle from infancy to old age. If the life cycle from "egg to wallet" of reptiles or reptile fur or products made therefrom is to be covered, even methods based on DNA determination are of little help. Finally, in biometric tracking and tracing methods, the permissible error rate must be specified, for example how many individuals must be distinguished with what reliability. Reliability is accompanied by performance criteria such as the false acceptance rate (FAR) or the false rejection rate (FRR). In case of doubt, the different biometric test results are compared with each other. Thus, a fingerprint may be sufficient in a first test, but in case of doubt it needs to be completed by a more complex DNA evaluation for confirmation. This redundant biometric check allows a very low probability of identity verification errors. If only one biometric method - that is to say a certain set of biometric parameters - is available, the biometric requirements for FAR and FRR must be very high. A method as follows: The traceability of individual reptiles or their furs or their products must have very specific identification parameters adapted to the species and at the same time must be extremely strong in terms of their reliability.

[0005] EP 1 751 695 B1 proposes to increase reliability by multiple scans and the deviations between them via a stored two-dimensional variation code. A common and necessary data acquisition device with ubiquitous availability, i.e. a smartphone, should ideally have only one record to capture biometric parameters, especially since images are taken by hand and several images themselves already contain variability. No advantages are expected to be provided according to the proposed multiple scans or images.

[0006] CA 2 825 681C proceeds in the same direction as the comparison of several feature vectors (FV). This is quite similar to the methods for object recognition described in US 2014 / 0140570 and US 2015 / 0371087.

[0007] KR20180061819A Improved device for evaluating several biometric signals from the same object. The device itself can be mobile and connected to a server and thus meets the standards required by the market.

[0008] US2007 / 211921 A1 describes a method for connecting biometric signals to physical properties of objects. These in turn are stored as profiles on a database. The method is adapted to interactive input by a user, so that, for example, the biometric data of one of his hands is sufficient to order clothing of the appropriate size. Therefore, using fingerprint data stored in this way to track the history of a user over a larger period of his life (if not his entire life) is not possible and was not intended by the inventors.

[0009] WO 2018 / 129051 A1 relates to fabrics or tissues of clothing, wherein the clothing is thus assigned an identification code (UID). One restriction is that the relevant pattern must be distributed over at least 10% of the surface of the selected article. The invention discloses a barcode in the form of a pattern in a substance to be detected. All this is an interesting smartphone application, but is not applicable or only conditionally applicable for tracking and tracing and, if used, can only be used for immutable items.

[0010] In contrast, the system shown in WO 03 / 038132 A1 is suitable for tracking animal skins. In this case, the hole pattern and the detection of the hole pattern using an optical sensor are the core of the invention. The proposed technology is an inadequate solution to the current problem. The physical damage of animal skins and their products by the hole pattern alone is unacceptable.

[0011] For the same reasons, solutions according to WO 2018 / 189002 A1, which applies in particular to decorated leather, and WO 2015 / 179686 A1, which applies generally to the life cycle of animals, are unacceptable, since the tattooing methods described therein are both detrimental to animal products and prevent counterfeiting in a very limited way.

[0012] The inventions according to CN 108645797 A, CN 107525873 A and US2017 / 243284 A1 consider DNA analysis as a reliable tool for tracking and tracing animal skins from live animals to processed gelatin, meat, leather or fur products. However, DNA analysis is not a good enough solution for fast and simple tracking of reptile skins throughout the value and supply chain.

[0013] The authors of WO 2013 / 084242 A2, EP 1 438 607 A1 or US 2018 / 153234 A1 support the deployment of radio transponders or transponder cards. The first two patent documents relate to the tracking of livestock herds along the supply chain, while US 2018 / 153234 A1 discloses the marking of animal fur and leather products with RFID chips to prevent loss or counterfeiting. Moreover, in this case, the cost of tracking throughout the life and product chain is not insignificant, and the method is only feasible with verification using special equipment. Such devices are not generally available and therefore represent an undesirable obstacle.

[0014] In principle, the characteristics of an individually designed surface can be used to track and trace animal skins throughout the entire value chain up to a processed, commercially available product. Such characteristics should not only be properties of the individual product, but should also have a non-replicable or non-clonable shape (physical unclonable function, PUF) to ensure protection against counterfeiting. Typically, such non-replicable surface elements are implemented by complex random microstructures (physical random functions, PRF). Therefore, the terms PUF and PRF are used as synonyms below. For example, the use of such structures as fingerprints of objects is discussed in CN106682912A or US10 019 627B2 and JP2015 / 228570A, wherein the first two patent documents specifically consider three-dimensional structures and the latter specifically consider the communication of a UID (unique information function) connected to the randomness structure via a portable device. There is no discussion in any way of feasible implementations for tracking and tracing animal products from the birth of the animal to the final animal product.

[0015] One method of tracking items throughout the value chain is US 2013 / 277425 A1. The underlying invention is motivated by the prevention of theft, counterfeiting and unauthorized use of objects. For authentication, a "query device" is proposed, which performs its task at various points along the value chain by interrogating the tags. This method is hardly suitable for living bodies and therefore does not provide a solution to the problem of the present invention.

[0016] Fumiaki Tomita et al. published an article titled “Description of Textures by a Structural Analysis” in IEEE Transactions on pattern analysis and machine intelligence, IEEE Computer Society, USA, Vol. 30, No. 2, pp. 183-191, XP 011242555, ISSN: 0162-8828, March 1982, which described a computer-implemented method for surface recognition including scales, and applied the method in particular to the recognition of reptile fur. Summary of the invention

[0017] Based on the above mentioned prior art, the object of the present invention is to provide an improved computer implemented method for surface recognition including scales, in particular for reptile skin recognition, including the creation of a database for later comparison of the acquired data. Another object of the present invention is to provide a method for tracking and tracing animal skins, in particular reptile skins, based on such a created database throughout the life cycle and subsequent processing steps of tanning, dyeing and manufacturing of the final product (e.g. handbags, shoes etc.).

[0018] Other possible advantages of embodiments of the present invention should meet additional criteria, such as verification with ubiquitous devices, smartphones, tablets, etc., prevention of manipulation, counterfeiting and trading of endangered species or through illegal distribution channels, and high efficiency is a priority.

[0019] Finally, the method according to the invention must not be invasive or destructive to the material and at the same time must be highly reliable and robust.The invention will allow efficient and economical regulation management.

[0020] The present invention provides a method that captures the appearance of a reptile's fur from a camera-based device and allows the fur or a portion of the fur to be uniquely identified.

[0021] The first mentioned object is achieved by a computer-implemented method for surface recognition including scales, in particular for recognition of reptile fur, comprising the following steps: acquiring at least one image of a surface portion to be recognized; in an edge feature detection step, detecting features corresponding to boundaries of scales in said image by scanning the acquired image along a scan line over an area assumed to include a plurality of scales to acquire an intensity or color curve; an edge recognition step, determining scale edge candidates for one or more scales based on the acquired scan line image curve; a scale construction voting step, determining appropriate scale edges as part of a particular scale based on said scale edge candidates; a scale vote accumulation step, determining a scale edge representing the recognized scale edge; A data set of scales, the data set optionally including one or more data obtained from a group including data related to an ellipse, the major and minor axes of the ellipse, and the center position of the ellipse; using the data set for each of the identified scales to establish a graph of the repeating pattern scale positions of the detected scales; introducing a recalculation scale step, which identifies other scales where the established graph of scales presents gaps; determining the contours of the detected scales and creating a representative data set including the contour data for each of the detected scales; determining identification feature data of the detected scales from multiple representative data sets of the surface including the scales; and storing the identification feature data for the surface including the scales in a database.

[0022] Preferably, the scale construction voting step is followed by a scale verification step which comprises checking the acquired data relating to the identified scales against predetermined scale profile properties.

[0023] The step of establishing a map of detected repeating pattern scale locations of scales may further comprise determining adjacent non-overlapping scales from the set of identified scale candidates.

[0024] The above-mentioned method forms the basis of a method for tracking and tracing animal fur, especially reptile fur, which method comprises the following steps: performing the above-mentioned method on an animal fur sample including a surface including scales to obtain identification feature data, followed by the following steps: comparing the acquired identification feature data of the animal fur sample with a previously acquired and stored set of identification feature data of a surface including scales from reptile fur to identify the surface portion of the animal fur sample within the stored identification feature data, and in the event that the acquired identification feature data of the animal fur sample matches the stored set of identification features, updating the database with the comparison result and the updated acquired identification feature.

[0025] The step of comparing the acquired identification features is then preferably followed by the step of updating the database with the comparison results and the updated acquired identification features, so that the authenticity of the surface can be checked over time.

[0026] The step of detecting features corresponding to boundaries of scales in the image may include: an edge feature detection step, which obtains an intensity or color curve by scanning the acquired image along a scan line on an area assumed to include multiple scales; an edge recognition step, which determines scale edge candidates for one or more scales based on the acquired scan line image curve; a scale construction voting step, which determines an appropriate scale edge as part of a specific scale based on the scale edge candidates; and a scale voting accumulation step, which determines a data set representing the identified scale, which data set optionally includes one or more data obtained from a group including data related to an ellipse, the major axis and minor axis of the ellipse, and the center position of the ellipse.

[0027] When scanning the same surface at different times, as the surface is identified, the acquired identification features are preferably stored as updated identification features so that the evolution of the surface over time can be tracked and small changes in surface properties can be updated.

[0028] When scanning the same surface at such different times, other surface portions of the same surface can be scanned to obtain identification features of the other surface portions, and when the same surface is identified, the identification features of the other surface portions are stored as updated surface portion identification features as separate data sets. This is particularly helpful when the surface is later separated into different smaller surface portions to be processed, processed and sold separately.

[0029] The method is preferably performed in a computer system comprising a processor, a computer storage device including a computer program product suitable for performing the above-mentioned method steps, a camera suitable for acquiring images of the surface to be identified, and a computer memory for storing the acquired identification features in a database.

[0030] Further embodiments of the invention are set forth in the dependent claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The preferred embodiments of the present invention are described below with reference to the accompanying drawings, the purpose of which is to illustrate the current preferred embodiments of the present invention rather than to limit the present invention. In the accompanying drawings,

[0032] Figure 1 Visible details on the reptile's fur are shown in three detailed views ranging from 1 μm to 1000 μm;

[0033] Figure 2 Camera-captured photographs showing microscopic details of scales of three different sizes and components of scales;

[0034] Figure 3 Three camera-captured photographs showing microscopic details of a scale or components of a scale;

[0035] Figure 4 The main steps of the method for identifying the interaction between the system and the supply chain are shown;

[0036] Figure 5 The first part of the step-by-step development of the final fur product during the supply chain is shown;

[0037] Figure 6 Shown in Figure 5 The second part of the final fur product is then progressively developed during the supply chain;

[0038] FIG. 7A to FIG. 7C 7A) Photograph, 7B) simplified diagram and 7C) photo of the final product as a belt showing the fur area;

[0039] Fig. 8A and Figure 8B 8A) shows a flow chart of an overview of the method algorithm and 8B) shows sub-steps of the second step of the method steps of 8A);

[0040] Fig. 9 Shows the use of Figure 8B ) a series of scales for detecting edge features of the step mentioned in );

[0041] Fig.10 As shown in Figure 8B ) is identified as voting in the voting step referred to in;

[0042] FIG. 11A to FIG. 11C In three steps, it shows how to Fig.10 The scan line results are used to prepare Figure 8B )

[0043] FIG. 12A to FIG. 12C Three possible voting elements are shown;

[0044] FIG. 13A to FIG. 13D Method steps related to adjacency and neighborhood evaluation are shown;

[0045] Fig.14 Three planes are shown that take into account the aggregation / clustering of ellipses;

[0046] Fig.15A and Fig. 15BIn 15A) a contour construction step for the scale is shown, and in 15B) a detail view is shown;

[0047] Fig.16A and Fig. 16B shows the joint contour correction of neighbors in two different representations;

[0048] Fig.17A and Fig. 17B Two representations of fur prior to identification are shown;

[0049] 18A to 18C A basic comparison of small pieces of reptile fur is shown;

[0050] Fig.19A and Fig.19B The rotation invariant index is shown;

[0051] Fig. 20 A detailed profile comparison is shown;

[0052] FIG. 21A to FIG. 21C exist Fig.21A A grid of scales and its graphical representation with nodes and graphical links is shown in Fig.21B and Fig. 21C Surfaces associated with representative data attributes of a scale are shown in .

[0053] FIG. 22A to FIG. 22C exist Fig.22A The effect of size on the scale is shown in Fig. 22B The missing scales are shown in Fig. 22C The correlation of gap-spanning lines within missing flake detection is shown in . DETAILED DESCRIPTION

[0054] The solution devised involves the use of a portable computer preferably with a processor, memory and a camera, combined with a broader remote computer system, preferably using serialization and traceability, and data management elements, to efficiently and transparently track reptile skins at the item and part level in real time, and to support remote access, coupled to an authentication system that protects commercially sensitive information and can also manage user-specific privileges. Traceability data is available globally and at any time. The system therefore relies on a secure 24 / 7 database that can be easily accessed in real time using all types of connectivity solutions such as cellular telephone standards or other network technologies. The information stored in the database covers the entire value chain of fur-based products from the upstream hunter and / or farm all the way to the final product (similar to from cradle to grave and beyond).

[0055] The present invention includes many advantageous elements that can be implemented in different embodiments of the present invention. Such features are especially:

[0056] First, a reliably extracted representation of the fur enables the identification of large numbers of furs, covering the range of 1 to 10 billion individual furs - preferably 1'000 to 100 million individual furs - while the representation needs to be resistant to any kind of fur treatment, since it is a key element of a strong and robust tracking process over the entire supply chain, and the representation can account for all kinds of damages in terms of surface, shape or wrinkles. The above mentioned figures are based on reasonable commercial estimates and effective data processing in terms of speed and data volume, but without loss of generality. Various parts of the representation are subject to different degrees of damage. The most stable parts are the shape and the relative position of the scales of the reptile fur. More exposed to damage and absent during the entire supply chain is the wrinkle microstructure, which is a characteristic feature at a certain step of the supply chain, but is lost in a determined way when entering the next step of the supply chain. It prevents any manipulation attempts through illegal intervention, while the representation is based on biometric elements of the visible part of the scale-type fur texture.

[0057] In some specific cases, the fur representation can be converted into a unique identifier UFI - Unique Fingerprint Identifier. This conversion is influenced by the fact that the fur area to be represented is approximately the same, with similar acquisition conditions and foreseeable fur quantity.

[0058] Second, a combination of values ​​increases traceability characteristics, such as: quality control of skins, centrally managed and optimized farming, species identification, internal tracking, selection of optimal cuts, perception of good looking skin parts by the human eye, suitability of symmetrical skin parts for bags, while traceability characteristics remain stable and show a high level of identification over the entire supply chain or at least part of it by means of technology and software.

[0059] Thirdly, open IT platforms, which include: multi-server solutions - respectively cloud solutions, i.e. Amazon Web Services (AWS), Microsoft Azure or other clouds from Google, Samsung or Huawei, etc.; and smartphones, i.e. iPhone X, Galaxy S10, Huawei P20, etc. based on all common operating systems such as IOS (Apple) or Android (Google), HongmengOS - respectively HarmonyOS (Huawei), etc., but in principle also operating systems based on dedicated solutions that enable the implementation of a dedicated scanner for capturing microstructural details of reptile fur.

[0060] Fourth, a high integrity of the supply chain, which fulfils formal obligations such as required documentation, taxes, customs declarations, CITES certificates, etc., and ensures the authenticity of the fur products at every point in the supply chain.

[0061] Fifth, methods and algorithms for reliably extracting fur appearance under any acquisition conditions (using video, part recognition, alignment based on partially overlapping data, fur maps composed of elements, user guidance under various acquisition conditions, detection of appearance features adaptive to environmental conditions).

[0062] Sixth, method steps and algorithms for reliably extracting individual scales regardless of the elements present within the scales (texture, reflections, broken borders, markings, salt, invisible edges, etc.).

[0063] Seventh, method steps and algorithms for establishing a grid of scales and measuring its properties.

[0064] Eighth, the scale shape is adjusted to accommodate or resist the possible deformations that the fur may undergo during the supply chain.

[0065] Ninth, method steps and algorithms for computing the basis of identification propagation through a grid of scales.

[0066] Tenth, several layers of recognition methods, both macroscopic and microscopic, that rely on invariant features and variants.

[0067] Eleventh, a method for computing various features (such as the "beauty" of certain parts to the human eye) from the resulting fur representation.

[0068] Figure 1 Visible details on the fur of a reptile are shown in three detailed views ranging from 1 μm to 1000 μm (micrometers). The technical method relies on the visible macroscopic fur appearance and microscopic surface structure and microtexture of the fur of the animal. Other disclosures related to paper, plastics, fabrics / textiles, leather, etc. propose similar concepts. Compared to other published methods, the present invention analyzes surface structures covering a continuous range from 1 micron to more than several centimeters, such as Figure 1 Different types of structural elements are utilized. In addition, various specific geometric structures, such as scales, are extracted.

[0069] The first range 1, with sizes ranging from 1 μm to 100 μm (micrometers), shows the characteristics of the surface microstructure on the scales and in the gaps between the scales. The second range, comprising 100 μm to several centimeters, shows in particular the characteristics of a plurality of reptile scales.

[0070] The smallest scale fur elements 7" in the range of 1 micron to 5 microns shown in the above detailed view are characterized by irregularities in the edges 4 of the scales, the gaps between the scales and the folds 3 on the original reptilian fur 12 on the scale surface. The preferred image capture device is a microscope - respectively a handheld microscope, but also a dedicated lens or a dedicated lens-camera combination (back-coupled lens).

[0071] Figure 1 The second detailed view shows the middle part of the first size range or the middle-sized scale fur element 7', which can already be obtained by a high-resolution image capture device (such as the camera of a prior art smartphone). The characteristic parameters of this middle part are the shape of the center point 5 of the scale and the scale perimeter 6 of the scale.

[0072] Figure 1 The third detailed view of shows a higher part of the range, where in the second range 2 at the start, parameters such as a combination of the center points 5 of a plurality of scales are revealed, with respect to the larger size scale fur elements 7 of the surface elements, a multidimensional center point vector is defined based on the positions of the scale centers 5 and the links 11 between them. The larger size 7 is defined as a detailed view of a scale image with a side length of 100 micrometers to 10 millimeters, which shows a plurality of scales with center points 5 of the scales. Reference numeral 11 is used for a point-to-point connection between two scale centers 5. The scale center 5 distribution and the link 11 distribution are specific to reptile fur.

[0073] The geometric relative positions between the scale centers 5 are non-directional graphs (mathematical structures with nodes connected by lines / links). Nodes (e.g. scale centers 5) can have attributes like coordinates or size, and connections (i.e. links 11 between scale centers 5) can have attributes. In the present case with a regular grid, such a graph will have a meta-layer in which information on the frequency or probability of the scale distribution will be stored. This is therefore related to a probability graph.

[0074] Figure 2 Corresponding to Figure 1The microscopic level relationships are shown in the form of a real camera photograph. The camera can be from the smartphone mentioned above. The following method can then be performed by a processor in the smartphone. Any data acquired as basic data for performing the method steps is stored in the memory of the smartphone. The acquired data can be stored in another memory of the smartphone. It is also possible that no computing and storage space is used beyond that required for using the camera in the smartphone, but rather provided by a network service and directed by a remote processor. Each time the term "method step" is used in this application, it refers to a method performed by a computer processor through a computer program provided to this effect in the storage device of the computer device. The computer program can be provided in the mobile device that takes the photo, or the mobile device only hosts the image capture program and transmits the images used for all other computing steps to the remote computer and only receives back the following information: in the case of registering the reptile fur, the registration and data collection were successful, and in the case of examining a part of the reptile fur, the part was identified or not identified.

[0075] The same features have the same reference numerals as the center 5 of the scale, and the three scales shown are numbered: first scale 8, second scale 9 and third scale 10. Since the scale size is usually between 5mm and 4cm, the image size here can be 5mm by 2cm to 4cm by 12cm. For better understanding, Figure 2 A non-photorealistic cropping of reptile fur at a medium level that can be obtained with a high resolution camera is shown. The side lengths of several scales are indicated with scales 8, 9 and 10. Figure 2 The representation shown in shows the smooth shape of the shape of the scale perimeter 6, which varies from scale to scale in an apparently random manner, and the center point 5 of the scale. The unique pattern of the arrangement of the selected multiple center points defines the dimensions of the fingerprint of the fur of different reptiles.

[0076] Another fingerprint dimension is derived from the perimeter of a selected plurality of specific shapes of the corresponding scales. Figure 3A representation of a reptile skin in different production steps is shown in the figure, including a raw reptile skin 12 prepared shortly after slaughtering a single animal, a pre-tanned skin 13 and a leather surface 14 made from the same single cut from the same single animal. At least a portion of the scale structure 15 remains unchanged during all processing steps of the reptile skin. Once the reptile has developed a typical scale-type skin, the invariant structural elements are specified during the registration age process. Therefore, registration must be done by the reptile breeder. In the case of legal hunting of individual animals, registration needs to be done by the hunter or the distribution station, respectively, where the body or skin of the reptile is brought into the supply chain. It is assumed that the area 15 can be identified by the user performing the registration in the case where the area 15 is the relevant body part. Otherwise more parts can be scanned until most of the surface of the reptile's skin, and each cut body part can then be identified.

[0077] The main steps in identifying the interaction between the system and the supply chain are Figure 4 . The steps of registration 16 of the main fur parts on the animal, verification 17 of the animal, verification 18 of the main fur parts, registration 19 of the complete original fur, verification 20 of the original fur, tanning 21, verification 22 of the tanned fur, registration 23 of the whole fur at macro / micro level, cutting 24, verification 25 of the fur parts and final verification 26 of the final product indicate at which moment the fur or its parts will be registered and at which moment it can or should be verified. Any inspection that does not confirm the current verification step will result in the exclusion of the corresponding reptile fur part. In other words, the registration process described later as part of the computerized method can occur at any time and space between the verification 17 of the animal and the verification 26 of the final product. Verification 17 of the animal refers to an inspection of the animal at any stage of its life (of course, outside the egg for oviparous reptiles, or outside the mother's body in the case of viviparous reptiles).

[0078] and Figure 4 Compared with this block diagram, Figure 5 and Figure 6The life cycle of a reptile fur is visualized in two parts: from egg 27 to chick 28, to young animal 29, to fur 30, to different parts of the fur part, namely the first stage of the fur part 31, the second stage of the fur part 32 and the third stage of the fur part, as the raw fur passes through the tanned fur to the further processed fur, to the final product 41. The transformation steps include the following transformations: egg to chick 36, chick to young animal 37, prepared fur 38, fur part and coating 39, tanning and coating between different stages of the fur part 31, 32 and 33 and object manufacturing 40. The reptile fur is registered or can be registered shortly after the formation of the invariant element area 42 identified in the scale structure of the reptile fur, that is, at the stage of the chick 28.

[0079] The area containing invariant elements (or elements co-varying with certain transformations during the supply chain) to be analyzed at each step by the image capture device is called a fingerprint area. The location of the fingerprint area is indicated by a characteristic pattern 15 generated by the arrangement of multiple scales of a certain size, which can be easily detected even by a low-resolution camera.

[0080] The digital fingerprint obtainable by a medium to low resolution image capture device is specified by the size and shape of a single individual scale and the size and shape and arrangement of multiple selected single individual scales that provide vectors due to their neighborhood properties.

[0081] FIG. 7A to FIG. 7C Shown by Fig. 7A The specific shape 43 produced by the continuous collection of scales at defined locations on the fur area of ​​the reptile in the figure is defined by the boundaries 44 of the area. Figure 7B In the scale-based fur representation, those elements correspond to the perimeter representation region boundary 45 around the represented such scale collection region 46. Such a representation can be later represented as Figure 7C As in the example above, it is related to an area 48 on the final product on the final product 47. The added value of this technology is that the area on the final product can finally be identified as a certain part from a known fur, which is identified as the fur part of the chick 28.

[0082] The visual appearance of the fur evolves along the steps of its life: chick, young animal, adult animal, fur, salted fur, dried fur, tanned fur, painted fur, treated fur. Figure 5As outlined in , different elements of this appearance exist during various stages of the supply chain. The scale outlines are the most representative information. They are resistant to damage throughout the life of the skin and undergo only limited degradation. The disadvantage is that they require a larger area to describe the skin. The colour or texture of the scales or inner scales is quite unique information, but it disappears after tanning and cannot usually be relied upon. In contrast, the folds along the scale outline appear after tanning and have quite extensive information about the skin area. Especially when cut into wristbands, these folds will allow the skin to be identified.

[0083] The business process behind using the skin appearance as an identifier consists of acquiring a whole or part of a skin at one or more steps in the supply chain and storing or updating information about it in a local or central database. Furthermore, verifying whether the skin appearance of the whole skin or part of it belongs to the stored skin. The goal is to identify a whole skin or a piece of skin belonging to a skin.

[0084] The method according to the invention consists in building / extracting a robust representation of the fur and using this representation to identify the fur or parts thereof and to perform some added value services such as quality checks or the selection of the correct area for a wristband. The chick 28 can initially be registered with a specific body part 15 and only after an inspection of the processed fur (e.g. fur 30 or fur in one of the stages 31 to 33) (i.e. as an inspection of the whole animal) the fur is cut into pieces and re-registered for multiple parts, i.e. each cut part is re-registered and connected to the total fur identification initially registered. The parts used in the bag 41 or belt 47 can then be tracked, wherein the identification part 48 is of course different from the identification part 42.

[0085] A technical description of the method is presented below and consists of the following sections: Method Overview; Image Acquisition and Initial Candidates.

[0086] The method should operate within the acquisition condition perimeter. This includes: any light, any phone, any / most fur conditions.

[0087] The method of extracting fur is Fig. 8A and Figure 8B 8 shows in 8A) a flow chart of the method algorithm overview steps 49 to 55 and in 8B) sub-steps of the second step 50 of the method steps of 8A).

[0088] The first step, acquisition 49, is responsible for the image or video acquisition step. It does not rely on the smartphone capabilities to select parameters. Essentially, exposure and focus are set in the app according to a proprietary adaptive focus algorithm to set the focus when needed without relying on the phone. The goal of the focus is to reveal sharp details of each of the fur elements (scale boundaries, wrinkles, smooth changes in depth of the inner surface of the scales). Guiding the focus to reveal those elements in the image will be based on the scale shape, the deformation of the fur at several scale levels, the clarity of the scale boundaries, the clarity of the wrinkles. It can be selected that instead of one focus position for each feature, there will be a range of focus planes and the characteristics of the wrinkles, for example, will be represented as its representation of the geometry across several focus planes. To a lesser extent, white balance and image resolution are selected. Preferably, the raw image format is used.

[0089] In video mode, real-time feedback of the quality of the video being acquired is constantly provided to the user as a guide. During video, these parameters are measured from the video frames and image metadata at a rate between 1 and 120 frames per second. The parameters measured from the video are: focus and therefore distance of the fur from the phone, adequacy of light, color of the fur, presence of reflections, but this is not a limiting list. The result of the first step is a video or image sequence whose quality is sufficient for processing in the next step. The result of step 49 is at least one image to be subsequently processed.

[0090] The second step of the algorithm is the scale candidate step 50. The goal of this step is to find the initial scale position based only on the local attributes of each scale. The initial scale position means that any information outside the perimeter of the scale will not contribute to or affect the detection of the scale boundary. In other words, the detection of the scale is completed based only on the information available around the scale boundary (hence "local"). In contrast, in the later stage, if a scale does not have a complete boundary and cannot be detected locally as described above, and its neighbors are all detected, the information from the neighbors optionally enables to enhance the confidence that the scale boundary should appear at this position, and its detection can be completed even if some information is lost locally. Therefore, contextual information can be used to detect scales at a later stage. For understanding, the opposite situation is to use the attributes of the neighbors of the scale to detect all scales. As explained above, a scale may have only 20% of its boundary visible in the image, and therefore cannot be detected by itself. However, adjacent scales can be detected and their position, size, orientation, shape (square, circle, diamond) can be displayed. From a probabilistic point of view, the relative positions of the scales in a group can indicate where the other scales should be, and support the assumption of detecting such scales for which only 20% of the boundaries are available. Of course, 20% is just an example, and generally refers to the fact that only a quarter or so of the rectangular scale boundaries can be directly detected. The result of the second step is a collection of individually detected scales, a probability map of the detected scales, and the expected positions and properties of the scales that were not detected, as well as newly detected scales based on partial local information enhanced by the confidence obtained from the neighbors.

[0091] The third step of the algorithm is to establish a grid graph step 51. It corresponds to establishing a grid of scales and calculating the properties of the grid, such as the repeatability of the scales and the distribution of the scale sizes and the evolution of their properties with direction. The result of this step is a graph in which scales are nodes and arcs are adjacency links to adjacent scales. Each scale is characterized by its geometric properties and the evolution of the properties along the evolution direction and the probability map of the center. In this context, the geometric properties refer to the fact that each scale is represented by its centroid or geometric center, by unique shape description parameters such as the major and minor axes of the ellipse and the properties of its contour, and the properties of its contour can be represented by simple points at a given resolution, vector curves approximating the boundaries, and parameters of various shape representation techniques. Evolution means that the grid of scales cannot have a sequence of small-large-small-large scales in one direction, and there is a consistency in the evolution / propagation of the geometric properties of the scales corresponding to approximately the same orientation and the same size, or there is a clear boundary of the properties corresponding to the transition between, for example, the ventral region and the lateral region where the square scales are replaced by round scales. The probability map of centers relates to the fact that if a map of scale centers is built, it will correspond to a grid with steps between scale centers, which are more or less the same size if the scales are of the same size. Therefore, it will be possible to build the probability of encountering a scale at a given location based on the grid properties. This is labeled here as a "center map".

[0092] The fourth step of the method is the recalculation of scales step 52. This corresponds to an attempt to find additional scales where the grid probabilities predict additional scales. Since the fur of the animal is not known at the time of identification, the probabilities of the scale locations are based only on the scales that are present and visible in the image. Therefore, a probability map or grid probability is constructed from the scales detected in the image and can be used as a basis for establishing a grid. In other words, preferably, the scales to be detected are not used as starting scales because the boundary portion is missing or unclear. This step occurs in order to recover scales that are not too large and where gaps occur in the scale map. In other words, in the case where the second step fails to determine the presence of scales but the gaps are not gaps between scales but undetected scales, this step attempts to identify and distinguish additional scales from the image taken in the first step. At the first step, some scales are not detected based only on possibly incomplete local information (e.g., only 20% of the boundary). At the level of the grid or probability map construction, the following prediction or expectation is obtained: given the observed positions of the detected flakes, it is very likely that such a grid is in place, and it is very likely / likely that at certain positions there should be a flake, but it was not detected in the first step. Furthermore, the grid provides not only probabilities of positions, but also probabilities of orientations and sizes. With this knowledge, a re-detection with more certainty about which flakes were detected becomes possible. The re-detection step is considered to be a mandatory step in the method according to the invention, which improves the overall flake detection quality.

[0093] The fifth step is the contouring step 53, which enables the precise contour of each scale to be established based on several criteria and adjacency constraints. They are subsequently described in this description using Figures 15 to 16. Fig. 20 In short, these are criteria (or constraints) that are consistent with the scales on a reptile's coat. These have to do with the geometry of the scales (such as smoothness), correspondence of high gradients in the image, and adjacency. The result of this step is an accurate representation of each scale by its geometry. Here, accurate means a geometric representation of the scale shape that reflects the properties of the scale down to details of a defined size, preferably down to 500 microns.

[0094] Once the fur representation has been established, it can be identified by a recognition step 54 which consists of several sub-steps as described below.

[0095] Finally, the verification step 55 is responsible for the detailed verification of the relative scale positions. Fur identification comes with a certain degree of tolerance. Once the fur has been identified, a detailed verification can be performed, which can be seen as a more detailed comparison between the two representations with a higher degree of accuracy. If the initial identification was targeted at speed, the verification verifies whether the differences between the two representations can be classified as coming from stretching, cutting or tanning. Therefore, verification is a step in which two fur representations are compared to be identical in certain areas and the differences can be classified as reasonable.

[0096] Figure 8 Figure 8B The determination of scale candidates is shown in FIG. Figure 8B The lower part of the method shows a flake candidate step 50. This step of the method comprises three stages with a final step: extracting edge features in an edge feature step 56, defining elements that vote for flake / bump structures in a voted element step 57, and voting in a voting step 58, and finally vote accumulation in a vote accumulation step 59.

[0097] like Fig. 9 and Fig.10 As shown, the edge feature detection step 56 is performed using a one-dimensional scan of the image. Without loss of generality, it can be replaced by a standard 2D filter, including edge detection operations in image processing with adaptive parameters that can reveal scale properties such as boundaries, wrinkles or textures. Fig. 9 , an image is scanned with a first scan line 61 and an image is scanned with a second scan line 62, the image showing three "image elements" one beside the other. The intensity or color curves corresponding to those scan lines are a first color curve 63 and a second color curve 64. One, two or more scan lines such as these scan lines 61 and 62 may be provided and performed simultaneously or sequentially. The scan lines 61 and 62 are parallel to each other. Non-parallel scan lines are possible but require further calculations.

[0098] For each scan line 61 and 62, the processor calculates the maximum envelope and the minimum envelope defined by the local weighted maximum 65 and the local weighted minimum 66 shown for the first scan line 61. The envelope may be evaluated for each scan line 61, 62, or the information may be shared between the scan lines 61, 62. The value of the envelope may be calculated with a variable sampling density.

[0099] The edges of objects such as scales in the image are first detected as intensity or color transitions about an envelope. Such transitions of different sizes can be accepted. Without loss of generality, a simple first edge transition pair (edgelet) 67 and a second edge transition pair (edgelet) 68 can be detected as two adjacent transitions along two scan lines, which can be placed in different spaces, preferably with a parallel distance between them. It should be noted that multiple combinations of transitions can give multiple hypothesized edges. It should also be noted that the double transition has useful information such as edge orientation. Rising or falling transitions are distinguished for different scan lines 61, 62, and this information is stored.

[0100] A first diagonal scan line 261 and a second diagonal scan line 262 are shown to indicate that different scan lines may also provide different answers. Corner information is less preferred.

[0101] A first vertical scan line 361 and a second vertical scan line 362 are shown to indicate that scan lines perpendicular to the first scan line 61 may also be used, which would produce side information similar to curves 63 and 64 .

[0102] Depending on the image acquisition and fur type, it can be expected that Fig.10 The edges 69 of a scale may be shared by two adjacent scales; a scale may contain artifacts 69'; a weak edge 70 may exist when the contrast is low or the individual edges of each scale are different, and a missing edge 71 may exist when an edge is only seen on one side of a scale.

[0103] The first scan line 61 produces a first color curve 63, and this shows several types of transitions. In this case, the first transition type 72 has a clear rising transition and a falling transition. In the next case along the scan line 61, the second transition type 73 has a clear double transition, one of which is not very obvious. In the case of the third transition type 74, a clear single transition is not followed by any transition to the next scale.

[0104] Once the above steps, edge feature detection step 56, are completed, the next step in the module of scale candidate step 50 is the identification of voting elements step 57. In computer vision, there is always a trade-off between grouping features to make more certain votes or making broader votes based on less reliable small features. Here, several possible voting options are introduced. The first stage of voting is to have a pair of edges. Fig.11A and Fig. 11B As shown, edges are identified along the scan lines and Fig. 11CSeveral edges are detected along the scan lines. Note that the two scan lines clearly give information about the edge orientation and preference. Using scan lines instead of edge detection filters provides a very important speed advantage over edge detection, but both methods can be used. In other words, using scan lines is a specific implementation of detecting flake boundaries, but performs better than the edge detection filters also mentioned. At this stage, the flakes are unknown and such edges could belong to anything: flake boundaries, reflections, textures, markers, as combined Fig.10 As described.

[0105] Fig.11A A selection of a single transition with a transition pair 76 is shown, which is characterized by several properties that are selected from a set of transitions. First, the height of the transition should have some similarity in the case of originating from an edge. The color properties of the scale boundary must also be similar, that is, if it is a brown texture, the two curves should have similar transitions from one color to another. In contrast, transitions from tiny objects such as wrinkles will show quite different properties between scan lines and can be discarded. Of course, the transition should be an ascending or descending slope on the two curves. The transition width can be measured in the simplest embodiment as the distance between the maximum value reached on one side and the minimum value reached on the other side. Therefore, the two transitions should have similar widths.

[0106] Fig. 11B A double transition pair 176 is shown, characterized by similar intensity / color curves, rising or falling slopes, similar shapes, and acceptable widths. The second flake boundary is less distinct than the first flake boundary.

[0107] Fig. 11C A first edge (point pair) 75 and a second edge (point pair) 77 are shown that are selected / paired if they have some specific properties. Such a property can be the distance between them, which should be within a reasonable range for a scale size that can show a given type of fur and distance from a smartphone. The second condition is that the intensity or color slopes directly in the image color space should be complementary. Typically, there should be a descending slope 78 and an ascending slope 79, but in some cases, two slopes of the same type are selected. The combination of edge pairs along a pair or more scan lines produces possible edge pairs 80. The selected edge pairs have the reference numeral 81.

[0108] FIG. 12 is used to illustrate how the voting step 58 is triggered and performed. In part a) above, the two initial edges that form the primary pair, the selected edge pair 81, will be the basis for voting. Depending on their orientation, there are two possibilities. If their orientations are similar to each other as shown in part a) above, they may be from opposite walls of the scale. Their corresponding secondary edges will be searched along the vertical scan 82, which is implemented by four secondary scan lines 161, 162, 163, 164 that are perpendicular to the primary scan line 61 ( Figures 12A to 12C The secondary edge 83 obtained from the secondary scan line will be subjected to complementary filtering.

[0109] As shown in b) of FIG. 12 , in the case where the selected edge pair 81 presents a different orientation, a complementary secondary vertical scan 82 will still be performed perpendicular to the original scan line but at the location where the primary edge 81 is found to obtain a secondary edge 83. Since a scan line simply means analyzing image data from a still image along a specific line, this switch to a different scan line can be quickly achieved. The two horizontal scan lines 61, 62 reveal that the edges (transition pairs) have different orientations and are not parallel. At the location of these pairs, a vertical scan, in particular using scan lines 161, 162, is performed.

[0110] exist Fig. 12C , it can be seen how the votes are stored once three or four sides of a scale are identified. An ellipse 180 is selected to represent the scale as the most compact structure and most useful for the next steps. The ellipse hypothesis is stored as the ellipse center 84, the ellipse major axis 85 and the ellipse minor axis 86. This parameter set represents a hypothesis for the scale with the minimum data set to represent the whole. The result of this step is a set of multiple ellipses 180 representing each scale built from the local structure of the scale. It will be the case that many ellipses are voted as artifacts and all generated ellipse sets must be filtered to make such votes corresponding to a scale.

[0111] An optional step of the method is to trigger a guided verification process once the assumption of flakes is confirmed by several unanimous votes. In this case, various flake contour properties will be verified. The assumption of flakes means that the detected data defines the flakes of the image taken by the smartphone.

[0112] The next step of the method is a vote accumulation step 59. Several variants are embodiments of the invention. Each vote for a scale is stored in the form of an ellipse 180 describing the position (center), two main axes 85 and 86 describing the height and width of the scale. In the case that the scale is not square and therefore the ellipse is circular, the main axes also give the orientation. Fig.14As shown, it can be viewed as a 2D graph, with the center position as the x, y key and the values ​​of the two axes and orientation as the payload stored in the graph. The description refers to a data structure (called a graph) that accesses and stores values ​​with x, y coordinates. The ellipses 180 that are voted can first be indexed / accessed / selected by their center 5 coordinates (the lowest plane). This selection can be performed with a tolerance, that is, all ellipses with a center 5 are found in a given area defined as a rectangle, circle or other shape. Once a group of ellipses 180 are selected based on a pair of coordinates x, y, they can be clustered based on their size and orientation for consistency (the second plane). From each cluster / group, an ellipse with a scale boundary edge vote that fully exists along the ellipse boundary and therefore corresponds to the most complete scale can be selected. In other words, by clustering according to the center of the ellipse in the center graph 87 for accumulation, the first grouping votes for an ellipse vote 88 that is geographically close to each other to a certain extent. This can be achieved by discarding speed or a more sophisticated tree method. For each group of clustered ellipse votes, separation is performed by attributes such as major and minor axes, and orientation filtering 89 is performed by axis. A scale that triggers several ellipse votes will correspond to the voting peak at its center position in the x, y space. For consistency, these votes are filtered about the scale size, and votes for specific scale sizes are given. A certain number of votes for roughly the same center position, with the same major and minor axes, correspond to a valid assumption of fur scales. This assumption may be caused by artifacts in some cases, but meets the standards of convexity and size. Access / select ellipses through the x, y center, which is the most representative and important information for 2D in space. By defining the range of x1..x2 and y1..y2, all ellipses whose centers are within this interval are extracted. In the second step, parameters / dimensions such as the major axis, minor axis and orientation of the ellipse can be used. They reflect size and orientation. Therefore, the ellipses selected by the x, y coordinates can also be divided into groups / clusters, for example, based on their orientation or the size of the major axis. In the third step, if a group of, for example, 100 ellipses have similar x, y centers, similar orientations, similar major and minor axes, the distribution of the edges of the votes along their perimeters is checked. So, in summary, this is the order of the ellipse properties used for their clustering and validation of the scale votes. This is filtered by orientation 90 to provide the remaining ellipses.

[0113] Additional checks are performed on the elements that voted for the ellipse to have an initial idea about the distribution of the edges that voted for the ellipse.The result of the phase vote accumulation step 59 is the set of ellipses for which a sufficient number of unanimous votes were cast.

[0114] The next step is to build a grid graph step 51, which moves up one level in the hierarchy of representation and builds a graph whose nodes are scales and whose links define neighborhoods between scales. In the previous steps, ellipses were generated based on their local properties, and each scale was identified as a convex contour (which may contain any kind of artifacts inside). However, fur has very strong scale properties that are repetitive and consistently positioned in both directions (this creates an easily recognizable python or crocodile pattern). FIG. 13A to FIG. 13C It is shown that the neighborhood of an ellipse is first defined by the distance to the neighboring ellipses. The criterion used is the distance to the center, where the threshold is defined by the size of the central ellipse and can be approximately three times the diameter of the ellipse, in order to be able to reach small cells near large cells. For biological reasons, it is rare for neighboring scales to be 4 times larger than their neighbors. Therefore, a reasonable (but no loss of generality) search radius is 3 times the diameter. Fig.13A In FIG. 9 , the center ellipse 91 evaluates the distance to all possible neighbor ellipses 92 to establish an initial adjacency relationship that includes all possibilities.

[0115] The next step is to filter neighbor adjacencies by applying two conditions. Neighbors should not overlap, and they should share a boundary proximity 93 within limits proportional to the size of the adjacency ellipse. Fig. 13B In , it can be seen that after applying this step, the neighbors of the central ellipse 91 are only those that can correspond to real flakes (which cannot actually overlap). This adjacency condition can be evaluated with respect to the ellipse or the boundary part that exists according to the voting part. This current state of adjacency may still contain ellipses corresponding to real flakes and ellipses caused by some artifacts (such as reflections or textures or double flakes), but the adjacency relationship only links ellipses that are non-overlapping and that can reflect flakes from their size. Therefore, Fig. 13B The calculated ellipses 91 and 92 on the left are Fig. 13B There is no space 94 between the detected scales.

[0116] exist Fig. 13C In , another adjacency filter applied is scale attribute consistency. The grid of scales on reptile fur follows a pattern of fairly smooth variations in scale size and orientation. To check this consistency, several options can be applied in the method. One possibility is to analyze the scale grid 97, where the values ​​of the attribute 95, for example as the major axis, are represented as a 3D surface. Major axis size as z-values ​​that produces a sparse but smooth surface of values ​​implies good neighbors. The condition for overlapping scales is implicit in size consistency, but the point is that smoothness = proximity. The gradient of the attribute will be evaluated 96 to judge the smoothness of the scale attribute. Another possibility is to establish a 3D surface that is also like Fig.13DA set of adjacent ellipses 98 are shown, and the group geometric properties of these groups are locally evaluated to verify consistency. The geometric properties that the groups will be verified for can be divided into three parts. One is the consistency of the scale properties, such as the same orientation, size and center position. Second, the common properties of their boundaries. The outlines of adjacent units should share a close proximity of common boundaries / outlines, without containing too much space or other scales between them (consistent with the scale size). Third, the exact shape of the outline can show some similarities, such as less convex shapes or specific rounded corners on all scales, all like Fig.13D One implementation of such a step is to group the ellipses by a "cross" pattern or a 3x3 pattern and to evaluate the smoothness of the ellipse properties in different directions in each of such groups.

[0117] The above conditions will serve the goal of filtering the adjacent links between the voted ellipses. Links that do not meet the attribute consistency and smoothness will be removed. After such filtering, only links between potential scales that may form a mesh will be retained. The final filtering at this stage is to select the ellipse / scale that provides the maximum coverage of the fur area while exhibiting consistent attributes. The result of this step ends the step of establishing the mesh map 51.

[0118] In some cases, all of the previous steps may still fail to detect some flakes, usually because of poor illumination or poor incident light or other reasons. When the grid is built, it creates a probability surface where flakes of certain sizes and orientations are expected to appear. Missing flakes will correspond to gaps in this grid, where a recalculate flakes step 52 can be used to try to detect flakes with expected parameters again using a set of parameters that favors their detection. Thus, if at position x, y, a flake with axes a, b is expected, step flake candidate 50 can be repeated with more lenient parameters that favor edges at the expected flake outline.

[0119] The following will refer to FIG. 21A to FIG. 21C and FIG. 22A to FIG. 22C 1004] to illustrate an implementation of the recalculate scales step 52. As mentioned above, this typically occurs if there is weak illumination or weak incident light because the edges of the scales are not visible due to the weak ambient lighting, the direction of the light, the flat edges of some scales, the dark color of the scales, and the spaces between them. Step recalculate scales 52 attempts to restore the missing scales by typically using information about the similarities of adjacent scales and dissimilarity along the boundaries between fur regions. This information is present in the scale attributes for the newly created mesh.

[0120] The first part of step 52 is to update the mesh created before this stage with information about the flake properties. Fig.21AIn , a grid of scales is represented as a graph with nodes 401 corresponding to the centers of the scales and graph links 402 connecting the centers of scales that share a common boundary. For each link, several feature values ​​are calculated and stored with the x, y coordinates of the link midpoint 403 and the value of the feature link attribute 404 as the z coordinate. This creates sparse value points in 3D space.

[0121] exist Fig.21B , three features are reflected. One feature is the inter-scale distance 405 and the sum of radius 1 and radius 2. Reference numeral 406 points to a direct connection and includes the distance between two scales, which means that 406 is related to the sum, that is, this distance between the two scales is subtracted. If the scales are adjacent, these two values ​​should be similar. The second feature is the inter-scale orientation 407, that is, the direction of the connection, not its length, and the first major axis orientation 408 and the second major axis orientation 409 of the two scales corresponding to the link. The two main orientations 408 and 409 are measured relative to the inter-scale orientation 407. Finally, the shape of the scale cannot be reflected by the major and minor axes. The shape is defined relative to the inter-scale orientation 407 and defines how elliptical the scale is if the inter-scale orientation 407 is the axis of the ellipse, which is called the ellipticity 410. One extreme of this measurement is the value 0 and reflects a perfect circle, and the other extreme is the value 1 and is related to a perfect square with sharp corners. Once these features are computed, information about the adjacency of the scales is part of the graph and is associated with each link between the nodes of the graph (corresponding to the scale centers).

[0122] exist Fig. 21C , each link in the graph stores information about a first feature having, for example, a pair of values: inter-scale distance 411 and radius 1 plus radius 2, referenced as 406. Sparse points in 3D can be generalized to two surfaces: inter-scale distance surface 415 and sum of radii surface 416, which approximate the sparse values ​​of the two features. Approximation by surfaces can be performed by various fitting methods. Mainly in order to fit the surfaces, it is necessary to detect areas with scales of different properties (for example, the abdominal area has large and square scales, while the lateral area has small and round scales). In Fig.22A , such boundaries are shown with two rows of larger scales from one region 412 and one row of smaller scales from another region 413. The fitted inter-scale distance surface 415 in its parameter definition should allow for steeper steps along such boundaries between fur regions. After fitting, such a surface represents a probability map of encountering a particular value of a given feature at a particular location in the fur map. The smoothness of the surface, which incorporates information from the domain of scales, represents the evolution of the feature along the x,y directions.

[0123] exist Fig. 22B, a case where one scale is missing is shown. The constructed graph shows links that span across the missing scale location 420. The values ​​of features in this area will be inconsistent with the neighbors, and for example, the sum 406 of the scale radii on both sides of link 402 will be much smaller than the inter-scale distance 405. Note that some nodes 401 do not appear to be single circles, but rather collections of circles; this is an unintentional artifact of the graph. To find such gaps, the value measured at each link value 421 of the link (e.g., the inter-scale distance 405) is compared to the expected value 422 on the surface. If the difference is inconsistent with nearby links, a gap is detected and it is marked as a missing scale location 420. It should be noted that some links cross each other and may provide different values ​​at the same x, y position. For consistency, a scan of the graph is performed once in a first direction 417 (it is possible to follow links that are less than 70 degrees from this direction). And then a second scan is performed in a second direction 418. Links with value differences are identified as links that span gaps 419, which are Fig. 22B In this case, there is also a graphical link with reference number 402.

[0124] exist Fig. 22C , three of the four links 419 that span the gap are shown. The attributes stored in those links allow the scale shape 423 of the expected scale that would normally be present in the gap to be reconstructed, by comparison with the expected values ​​422 on the surface, so that the uniformity of the attributes better follows the surface. Thus, the final stage of step 52 will follow the expected scale outline (here represented by a dotted line) 423 and analyze the original image below it to look for evidence such as multiple edges, small changes in contrast, texture irregularities along this outline that would confirm the presence of a scale that was not detected in the original step and required a higher degree of certainty.

[0125] Once the scale mesh has been built, either directly or via the recalculate scale step 52, accurate outline construction can begin with the build outline step 53. The nature of reptile skin scales is such that there is no obvious path where a scale outline exists. Supply chain manipulations such as wrinkling, flattening, coating, tanning, etc. will change the way the scales are seen. Therefore, building one version of the scale outline is a compromise between multiple factors. It should be calculated to provide the most similar results across supply chain variations in the skin, and therefore the most reliable scale attributes should be selected.

[0126] exist Fig.15AA contour following the context is set on the . Initial scales are detected as ellipses or partial contours consisting of elements that voted for ellipses. Therefore, a template 101 can be proposed and established as an initial version of the contour. Tolerance limits 102 will provide the following envelope: in this envelope the resulting contour 103 will be established. These tolerance limits 102 are defined by the scale size and the surrounding grid inside and by the size tolerance and neighbors outside.

[0127] Contour following itself is an optimization process that can use a template in the form of points or curves defined by equations or spline-type curves. The optimization can be performed by following the template 101 several times, applying adjustments, or letting each point evolve in parallel. In the case of following the template 101, each next point step 104 is adjusted in turn. The update of the next point position is performed by considering several criteria and reaching a compromise where the weighted combination of the criteria reaches an acceptable minimum.

[0128] exist Fig. 15B , a simplified set of criteria is shown. As the iteration of the optimization moves from the previous point 105 to the next point 106, the next point 106 is updated. A non-exhaustive list of criteria is: smoothness of contour, proximity between points, attraction to high gradients at the edges of flakes, favoring edge angles (focusing on contours rather than wrinkles), closed contours, convexity, and consistency with adjacent boundaries. These criteria can be combined by a weighted combination as a second weight: attraction to gradients 108 and a first weight: contour smoothness 107, or as a logical combination (if a certain flake shape is emerging, a conditional weight like, for example, proximity to adjacent boundaries may be favored, while if another shape is present, the conditional weight is downgraded).

[0129] Fig.16A and Fig. 16B A more detailed description of the joint contour adjustment is shown in Fig.16A In the figure, a central scale SC and its neighbors are shown. The adjacent scales 110 are numbered N1, ..., N8. For the central scale SC, it is possible to start from the contour center 111 and establish the closest curve 112, which is characterized by being present on the disk of the adjacent scales, outside the contour center and without any other scales between the two curves. Such a curve also allows the definition of sector centers 114 and sector neighbors 113, which define sectors in which the corresponding center and adjacent scales share a portion of the border. Then, the contour of the central scale and the contour of the corresponding adjacent scale can be moved separately. Such displacement of the contour should comply with the other criteria mentioned above, such as smoothness and gradient following.

[0130] exist Fig. 16B, the same set of contours are represented in angle-radius (or θ-ρ) space. The center contour 115 curve is shown at the bottom, and the adjacent contours are also shown at the bottom. The joint displacement of the contours is shown by the moving center contour 117 and the moving adjacent contours 118.

[0131] Fig.17A and Fig. 17B FIG. 4 shows a representation of the fur before recognition. Fig.17A As shown, the stage of the outline building step 53 ends with the complete establishment of the fur macroscopic representation. Each scale representation 119 is characterized at least by its center and a descriptive ellipse, but also by a precise outline, which can be characterized by a series of points or by a curve. The fur representation is also a neighbor link representation 120 that establishes a relationship between two adjacent scales.

[0132] Other advantages of the present invention are reflected in Fig. 17B The contour representation can be more efficient in vector form. Given an existing fur base and the shape of its contour, the vector representation can be represented by vector curve nodes 121 and vector curve tangents 122, rather than 50 to 200 points. The approximation of the contour by the vector form curve will then be limited to approximating eight nodes and their tangents that cover the shape of the curve with sufficient accuracy. Therefore, using vector form will reduce the macro shape representation by orders of magnitude. Fig. 17B Two such nodes are shown, with vectors for each of the four primarily rectangular scale boundaries.

[0133] The placement and selection of nodes in the vector curves used in the present invention will pursue other goals than just compactness. First, it will aid in standardized scale comparison in identification. Second, it will simplify the indexing step of identification. Third, it will aid in assessing some quality-related characteristics of the fur. Fourth, it will aid in display. Fifth, it will aid in estimating deformation of the fur. Sixth, it will serve as a reference frame for describing the locations of microscopic features (see next paragraph). Thus, the placement and selection of nodes is a constrained step for producing a set of vector nodes and tangents that satisfy specific properties.

[0134] In addition to macroscopic features, each fur part has microscopic features, such as wrinkles and microscopic folds of tissue, texture and color. Most of these features will not be present throughout the supply chain. The main interest represents wrinkles that appear basically widely after tanning and, due to their rich diversity, will allow the identification of small parts of fur up to the size of a wristband. Detecting such features from the image will occur during the first step of the method or in an additional step after the scale detection. Then, each wrinkle or fold of the surface will be represented as a curve in the coordinate system of two points represented by a vector. In fact, two vector curve nodes 121 and their vector curve tangents 122 will be sufficient to geometrically describe the exact location of the wrinkle. When identifying, the user may not need to look for a specific area, because all areas will be stored in the database. Will hover over the wristband until the system confirms that the wrinkles are well acquired, and then the identification will intervene. The second part of the phrase refers to the fact that wrinkles only appear after tanning. This makes the method advantageous for initially implementing the identification process, when young chicks can be scanned, and then the data is updated during the life of the animal, and especially after its death and the processing of the fur, while checking whether it is the same animal, the database is updated.

[0135] Various applications are envisioned based on reliable fur representations, but the following section focuses on the identification step 54. In short, it is a step where many fur representations are stored in a database, and based on a newly presented fur or part thereof, a computer implemented method is able to indicate whether the fur or part is known. No prior knowledge of which furs, parts, locations, acquisition distances, rays are known.

[0136] 18A to 18C A basic comparison of small pieces of reptile fur is shown. Fig.18A In the example above, the items required for identification can be summarized. The fur portion 123 is presented to the system to be identified. This can be as follows Figure 5 any part of the fur shown. Since no reference information is available, several options exist. First, recognition can start from any starting scale 124 and propagate in all propagation directions 125. This method requires that the database has features that allow recognition from any point of the fur stored in the database (discussed below). Second, a fur representation can be built, and some properties detected (like the belly or spine direction), and then recognition will start from a limited number of scales close to a specific area. However, this method requires that some specific features are visible, which is not always the case as in, for example, a watch wristband. Third, the recognized point can start from a location indicated by the user.

[0137] It is therefore worth mentioning the identified patches 126 which are uniquely identified. This means that its surface allows a portion of the skin to be uniquely identified. The identification process identifies the common parts between the skin presented to the system and the parts of the skin stored in the database. Macro identification means that in certain areas the shape and relative position of the scales match within tolerances that may originate from treatments applied to the skin during the supply chain rather than from differences between two different skins. The performance of the system will be measured by the minimum area of ​​the skin required for skin identification.

[0138] exist Fig.18B A basic step of the identification is given in . Since no rotation reference is available, the basic implementation will rely on information that can be used as a rotation reference. One option is to use the starting scale 124 and define the scales as rotation reference scales 127. The selection of such scales, such as N2, N4, N6, N8, can be defined as scales that share a significant part of their borders with the starting scale 124, which can be compared with the starting scale SC mentioned above.

[0139] Fig. 18.c) shows the scale patches up to the first surrounding row in the θ-ρ representation. This form of scale patch representation is more suitable for the two normalizations required. The size of the starting scale 124 is unknown, and therefore, a scaling factor can be applied before comparing the two patches. Various values ​​can be used, such as the average between the major and minor axes of the ellipse, or the scale area is normalized to unity. Since there will be several possible rotated reference scales 127, comparisons need to be made from several comparison start angles 128. However, in θ-ρ space, this will correspond to a simple offset before the comparison.

[0140] In this particular embodiment, it is necessary to start with each scale and compare for each rotation reference angle.

[0141] exist Fig.19A In, one implementation of a rotation invariant index is outlined. Several scales will be used to define several reference direction base references 129. Since it is desirable to avoid dependence on one starting direction, the ray crosses based on those base references will be rotated with the rotation cross 130. For each of its rays, the position of the first contour outside the center contour point 131 on the nearest contour will be established. For each of the rays, the distance D1, ..., D4 will be calculated as the radius 132. In Fig.19BIn the case of a perfect rectangle, it will be 90 degrees, but it will usually be different. The Y axis will correspond to a function of the radius (e.g., the ratio between the radii of the rays in the four quadrants). For rotational invariance, such a curve will correspond to one quadrant of the scan with 3 / 4 of the information lost. In the case of four quadrants with 90 degrees and a radius in each quadrant, a search is performed to achieve independence of the quadrants from which the comparison is made. Therefore, if the scale is rotated to any basic orientation, the curve should be the same. That is four. Thus, for example, by taking the ratio between two opposite quadrants 1-3 and 2-4, two curves are obtained for each quadrant. Such a representation would be a 2-fold reduction in information and would be invariant for two of the four possible rotations (not complete rotational invariance). In the current case, the ratios between the radii in the 1-2-3-4 quadrants are used to obtain a curve of one quadrant length, but this would be invariant for a quadruple rotation. Thus complete rotational invariance is obtained, but 3 / 4 of the radius angle range is lost. Another way to look at this problem is to think about what shape of a geometric figure is rotationally invariant for the four basic angles of 0, 90, 180, and 360 degrees. And the answer is that it's a bit like a "square" in which all four sides can be varying curves, but all four sides are the same. Rotating such a figure by four angles will return it to itself. However, the only unique part in such a figure is one of its sides, which is 1 / 4 of its circumference, and 3 / 4 of it is a copy of 1 / 4. This proves 3 / 4.

[0142] Such an index function will be established for all furs and patches thereof in the database, quantized and used as a multidimensional index vector to select a subset of curves corresponding to furs worth comparing. It should be noted that the curve corresponds to the first contour closest to the central contour, while the second contour waveform and the third contour waveform can be used.

[0143] Fig. 20 A detailed profile comparison is shown. Fig. 20 In FIG. 1 , a gradual comparison of the fur selected in the indexing step will be described. A comparison will be performed between the fur representative curve 134 being compared and the curve 135 in the database. The comparison will gradually start from a first radius range 136 and, if successful, switch to a second radius range 137 and further to a third radius range 138.

[0144] The speedup of the comparison is achieved by the fact that the vector curves can not be compared point by point, but the difference of the two curves can be calculated in closed form from the node positions. Special mandatory node positions also facilitate this method and the comparison by radius range.

[0145] Other applications of fur representation are possible, such as quality analysis of scale shape, selection of the most visually attractive segments for wristbands, etc.

[0146] Reference numerals list

[0147] 1 First Range 22 Verification of Tanned Fur

[0148] 2nd range 23 whole fur macro / micro level registration

[0149] 3 The gap between scales and folds 24 cutting

[0150] 4 scale edge 25 fur part verification

[0151] 5 Center point of scale 26 Final product verification

[0152] 6 Shape of the perimeter of the scales 27 Eggs

[0153] 7 Larger scales, fur elements, 28 chicks

[0154] 7' Medium Scalp Fur Element 29 Young Animals

[0155] 7" Minimum Scale Fur Element 30 Fur

[0156] 8 The first scale 31 The first stage of the fur part

[0157] 9 The second scale 32 The second stage of the fur part

[0158] 10 The third scale 33 The third stage of the fur part

[0159] 11 Links between scale centers 34 Areas on the final product

[0160] 12 Original reptile skins 35 Final products

[0161] 13 pre-tanned fur 36 eggs to chicks

[0162] 14 Leather surfaces 37 Hatchlings to young animals

[0163] 15 scale structure 38 prepared fur

[0164] 16 Registration of the main fur parts on animals 39 Fur parts and coatings

[0165] 17 Animal verification 40 Object manufacturing

[0166] 18 Verification of the main fur parts 41 Final product

[0167] 19 Complete original fur registration 42 marked areas

[0168] 20 Verification of original fur 43 Areas on the fur

[0169] 21 Tanning 44 Area Boundaries

[0170] 45 indicates region boundary 71 missing edge

[0171] 46 represents the first transition type of area 72

[0172] 47 Final product 73 Second transformation type

[0173] 48 Area on the final product 74 Third transformation type

[0174] 49 Video and image acquisition step 75 First edge (point pair)

[0175] 50 scale candidate steps 76 transformation pairs

[0176] 51 Create a grid map Step 77 Second edge (point pair)

[0177] 52 Recalculate scale step 78 Downslope

[0178] 53 Create profile Step 79 Rise slope

[0179] 54 Identify possible pairs in step 80

[0180] 55 Verify the edge pairs selected in step 81

[0181] 56 Edge Features Step 82 Vertical Scan

[0182] 57 voted elements steps 83 secondary edges

[0183] 58 voting steps 84 ellipse center

[0184] 59 votes cumulative steps 85 ellipse major axis

[0185] 60 scale boundary 86 ellipse minor axis

[0186] 61 first scan line 87 center image

[0187] 62 second scan line 88 one ellipse vote

[0188] 63 First color curve 89 Filter by axis

[0189] 64 Second color curve 90 filtered by orientation

[0190] 65 Local weighted maximum 91 Central ellipse

[0191] 66 local weighted minimum 92 neighbors

[0192] 67 First transition pair (small edge feature) 93 Shared boundary

[0193] 68 Second transition pair (small edge feature) 94 No space

[0194] 69 shared edge scales 95 attribute values

[0195] 69' Gradient of Artifact 96 Attributes

[0196] 70 weak edge 97 scale grid

[0197] 98 A set of adjacent ellipses 128 Compare the starting angles

[0198] 101 Templates 129 Basic Reference

[0199] 102 tolerance limit 130 rotation cross

[0200] 103 contour 131 nearest point on contour

[0201] 104 steps 132 radius

[0202] 105 previous point 133 rotation invariant curve

[0203] 106 Next point 134 The curve being compared

[0204] 107 First weight: contour smoothness 135 Curves in the database

[0205] 108 Second weight: attraction to gradient 136 First radius range

[0206] 109 third weight: gradient angle 137 second radius range

[0207] 110 adjacent scales 138 third radius range

[0208] 111 contour center 139 identified area

[0209] 112 closest curve 161 first secondary scan line

[0210] 113 Sector Neighbor 162 Secondary Scan Line

[0211] 114 sector center 163 third secondary scan line

[0212] 115 center contour 164 fourth secondary scan line

[0213] 117 Moving center profile 176 Double shift pair

[0214] 118 Moving adjacent contour 180 Ellipse

[0215] 119 scales represent 261 first diagonal scan line

[0216] 120 adjacent links represent 262 second diagonal scan line

[0217] 121 vector curve nodes

[0218] 122 Vector curve tangent

[0219] 123 Fur

[0220] 124 Starting Scales

[0221] 125 transmission direction

[0222] 126 uniquely identified regions

[0223] 127 Rotation reference scales

[0224] 361 first vertical scan line 411 boundary between fur areas

[0225] 362 second vertical scanning line 412 large scale area

[0226] 401 node 413 small scale area

[0227] 402 Graphic Link 415 Distance between scales Surface

[0228] 403 Link midpoint 416 Radius sum surface

[0229] 404 Link Attributes 417 First Scan Direction

[0230] 405 distance between scales 418 second scanning direction

[0231] 406 The sum of the two scale radii 419 The link across the gap

[0232] 407 scale orientation 420 missing scale position

[0233] 408 First axis orientation 421 Link value

[0234] 409 Second principal axis orientation 422 Expected value on the surface

[0235] 410 ellipticity 423 expected scale shape

Claims

1. A computer-implemented method for tracking and tracing a reptile fur surface having a scaly fur surface for surface recognition based on an animal fur sample of the reptile, the method The following steps are involved: - acquiring (49) at least one image of a surface portion of the animal skin sample to be identified, - an edge feature detection step (50, 56) of detecting edge features of boundaries of scales in the image by scanning the acquired image along scan lines (61, 62, 161, 162, 163, 164) over an area assumed to include a plurality of scales to obtain an intensity or color curve, - an edge identification step (57) of analyzing the acquired scan line image curve to determine one or more scale edge candidates, - a scale construction voting step (58) which determines the scale edges that are part of a particular scale based on said scale edge candidates, - a scale vote accumulation step (59) of determining a data set representing the identified scale, said data set comprising one or more data taken from the group consisting of data relating to an ellipse (180), a major axis (85) and a minor axis (86) of said ellipse, a central position of said ellipse, - using said data set for each of the identified scales to create (51) a graph of the repeating pattern scale positions of the detected scales, - Introducing a recalculation scale step (52) to identify other scales, with the following steps: representing a grid of scales as a graph, the scales comprising scales sharing a common boundary, the graph having nodes (401) corresponding to scale centers and graph links (402) connecting the centers of the scales sharing the common boundary, Each graphical link (402) includes the x- and y-coordinates of the link midpoint (403) and the link attribute (404) as the z-coordinate. The link attribute (404) of each graphical link (402) includes the inter-scale distance (405) and the sum of the associated scale radius (406), wherein the missing scale (420) is identified by determining that the sum (406) of the scale radii on both sides of the graphic link (402, 419) is much smaller than the distance (405) between the scales; - determining the contour (103) of each of the detected flakes and creating (53) for each detected flake a representative data set comprising data of said contour (103), - determining identification feature data (54) from a plurality of representative data sets of detected scales of a surface including the scales, - storing said identification feature data (54) for said surface comprising scales in a database, - comparing the identification feature data (54) of the animal fur sample with a previously acquired and stored set of identification feature data of surfaces comprising scales from reptile fur to identify a portion of the surface of the animal fur sample within the stored identification feature data, and - In case the acquired identification feature data of the animal fur sample matches the stored set of identification features, updating the database with the comparison result and the updated acquired identification feature (54).

2. The method according to claim 1, in, The scale construction voting step (58) is followed by: - A scale verification step, which comprises checking the acquired data relating to the identified scales according to predetermined scale profile properties.

3. The method according to claim 1 or 2, in, The step of establishing (51) a graph of the detected repeating pattern scale positions of the scales comprises: - Determining adjacent non-overlapping scales from the identified set of scale candidates.

4. The method according to claim 1 or 2, in, When a match of the surface is identified when scanning the same surface at a different time, the acquired identification feature data (54) is stored as updated identification feature data (54).

5. The method according to claim 1 or 2, in, When scanning the same surface at different times, other surface portions of the same surface are scanned to acquire identification feature data (54) of the other surface portions, and when a match of the same surface is identified, these newly acquired identification feature data (54) are stored as updated surface portion identification feature data as a separate data set.

6. A computer system comprising a processor, a computer storage device including a computer program product suitable for executing the method steps described in claim 1 or 2, a camera suitable for acquiring images of a surface to be identified, and a computer memory for storing the acquired identification features in a database.

Citation Information

Patent Citations

  • Method and apparatus for authentication of 3D structure

    CN106682912A

  • Method of qualitatively analyzing sources of gelatin in hide gelatins

    CN107525873A

  • IOT (internet of things) anti-counterfeiting traceability system for rapid identification of donkey-hide gelatin DNA (deoxyribonucleic acid) and anti-counterfeiting traceability method

    CN108645797A

  • A method and a system for controlling meat products

    EP1438607A1

  • Identification of image characteristics

    EP1751695B1