Apparatus, system, and method for anonymous re-identification

By introducing time- and location-dependent transformation functionality into the re-identification system, the re-identification code is dynamically changed, solving the problem of insufficient privacy protection in existing systems, achieving anonymous re-identification and privacy protection, and simplifying system design and transmission/storage processes.

CN114255440BActive Publication Date: 2026-04-14GRAZPER TECH APS
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-22
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing re-identification systems are inadequate in terms of privacy protection, especially in multi-camera systems. The transmission and storage of re-identification codes require additional security measures to prevent traceability abuse, and traditional encryption methods cannot effectively maintain re-identification capabilities and privacy protection.

Method used

By adding a transformation function to the re-identification code, the transformation parameters depend on time and/or location to dynamically change the re-identification code to maintain anonymity, ensuring that the re-identification code is inconsistent across different times and locations. The transformation is performed using machine learning models and cryptographic primitives to maintain the equivalence class preservation property.

Benefits of technology

It achieves effective protection of personal privacy without sacrificing re-identification capabilities, allows the transmission and storage of re-identification codes in insecure devices and networks, reduces system design complexity, and prevents tracking across time and location.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114255440B_ABST
    Figure CN114255440B_ABST
Patent Text Reader

Abstract

Examples of the present disclosure relate to the concept of anonymous re-identification, more specifically but not exclusively, to systems, apparatuses, methods, and computer programs for performing anonymous re-identification and for training machine learning models used in anonymous re-identification. An apparatus (20) for re-identification comprises processing circuitry (24) configured to obtain media data via an interface (22), the processing circuitry being configured to generate, using a hashing algorithm, a re-identification code representing at least a portion of the media data. The processing circuitry is configured to transform the re-identification code using a transformation function to obtain a transformed re-identification code. The transformation function is configured to transform the re-identification code such that, if the re-identification code is similar to another re-identification code generated by the hashing algorithm according to a similarity measure, the transformed re-identification code is similar to another transformed re-identification code that is a transformed version of the other re-identification code. The transformation function is configured to transform the re-identification code based on a transformation parameter, wherein the transformation parameter depends on time and / or location. The processing circuitry is configured to provide the transformed re-identification code.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Examples of the present invention relate to a concept of anonymous re-identification (re-id), and more specifically, but not exclusively, to systems, apparatuses, methods, and computer programs for performing anonymous re-identification and for training machine learning models used in anonymous re-identification. Background Technology

[0002] Compared to identification systems that seek to determine a person's absolute identity (usually from facial features), visual person re-identification systems aim to distinguish or re-identify people based solely on their appearance. For example, the use of re-identification in a system may stem from a lack of prior knowledge about the actual identities of all relevant individuals, but its use may also be due to externally enforced privacy policies. Summary of the Invention

[0003] The various examples disclosed herein are based on the finding that some re-identification systems can be retroactively abused if a given re-identification code is associated with a person's absolute identity and remains constant over time and / or location. Therefore, additional effort (e.g., using strongly protected and closed systems) may be required to securely store and transmit the re-identification code, which can lead to additional implementation complexity, especially in systems with numerous cameras where the re-identification code is transmitted to a central server for re-identification. The re-identification code may also be stored for future analysis. Accurate matching of persons can then be performed using suitable graph-based algorithms (such as the Hungarian algorithm).

[0004] Other methods typically do not integrate privacy concerns or anonymization processes into the re-identification process itself. Instead, the assigned information may not be anonymized, thus always requiring the aforementioned additional efforts to securely process the data, as it could be used for (unwanted) identification. This constraint often leads to additional engineering efforts to keep the entire system secure and compliant.

[0005] The various examples disclosed herein address these challenges by providing a concept of anonymous re-identification based on the "privacy by design" paradigm.

[0006] Various examples of this disclosure relate to an apparatus for (anonymous) re-identification. The apparatus includes processing circuitry configured to obtain media data via an interface. The processing circuitry is configured to generate a re-identification code representing at least a portion of the media data using a hash algorithm. The processing circuitry is configured to transform the re-identification code using a transformation function to obtain a transformed re-identification code. The transformation function is configured to transform the re-identification code such that if the re-identification code is similar to another re-identification code generated by the hash algorithm according to a similarity metric, the transformed re-identification code is similar to another transformed re-identification code as a transformed version of that other re-identification code. The transformation function is configured to transform the re-identification code based on transformation parameters, wherein the transformation parameters depend on time and / or location. The processing circuitry is configured to provide the transformed re-identification code. By transforming the re-identification code, the re-identification code can be sufficiently altered to hinder personnel tracking across time and / or location, while maintaining re-identification functionality for re-identification codes from the same time period or location. Therefore, the resulting transformed re-identification code becomes significantly less difficult to trace and identify, and thus can be stored more easily.

[0007] In various examples, the transformation parameters depend on time. The processing circuitry can be configured to adapt the transformation parameters according to a predefined time schedule. By adapting (i.e., changing) the transformation parameters according to a predefined time schedule, it becomes impossible to track people across time.

[0008] For example, the processing circuitry can be configured to delete previously used transformation parameters after adapting them. Without the transformation parameters, the original re-identification code may be unrecoverable.

[0009] In some examples, a gradual transition between transformation parameters is used. For instance, the processing circuitry can be configured to generate two transformation parameters for two time points. The processing circuitry can be configured to gradually adapt the transformation parameters between the two time points based on linear interpolation between the two transformation parameters. Through this gradual adaptation, re-identification code matching can be possible only throughout the entire sliding time window.

[0010] In various examples, the transformation parameters are derived from cryptographic secrets. By using cryptographic secrets as the basis for the transformation parameters, malicious actors can be prevented from recovering the transformation parameters. Moreover, the cryptographic secrets can be used to drive the sequence of transformation parameters, thus eliminating the need for the device to assign the transformation parameters to the equipment.

[0011] The transformation function can be configured to perform a linear transformation of the re-identification code based on the transformation parameters. Linear transformation can provide re-identification code transformation with low implementation complexity.

[0012] In some implementations, the transformation function is configured to transform the re-identification code using a rotation matrix. The rotation matrix is ​​based on the transformation parameters. For example, the elements of the rotation matrix may be based on pseudo-random numbers derived from the transformation parameters. The transformation based on the rotation matrix satisfies the so-called "equivalence class preserving" property required to maintain the re-identification function in the transformed re-identification code.

[0013] In some examples, a nonlinear transformation can be chosen instead of a linear transformation. In other words, the transformation function can be configured to perform a nonlinear transformation of the re-identification code. Nonlinear transformations can provide even higher levels of security, albeit at the cost of implementation complexity and verifiability. For example, the transformation function can be configured to perform the nonlinear transformation using a machine learning model. In other words, the machine learning model can be used to perform a nonlinear transformation of the re-identification code.

[0014] Re-identification systems can be used with various types of media. Besides human image data, re-identification systems can also be applied to images of vehicles or animals, or used in conjunction with other types of media. For example, media data can be image data, video data, audio data, 3D representations of object motion, and text-based media data. These types of media can be used with appropriate re-identification systems and hash algorithms.

[0015] Various examples of this disclosure can be used for video surveillance and / or tracking of people, vehicles, animals, etc. For example, the processing circuitry can be configured to acquire the media data from an imaging sensor of a camera. In this case, the media data can be one of image data and video data. For example, the device can be located in the same place as the imaging sensor, or the media data can be provided to a device that generates re-identification codes for more than one camera and transforms those re-identification codes. For example, various examples of this disclosure provide a camera device including an imaging sensor and the device thereof.

[0016] As described above, in some examples, the device can be used with more than one camera, or more generally, with more than one media data generating device. In this case, the device can be accessed via a (computer) network and is used to generate and transform re-identification codes for more than one media data generating device. In other words, the processing circuitry can be configured to obtain the media data from one or more media data generating devices via a network.

[0017] As noted above, the transformation parameters can depend on the device's location. If a network-based device is used with media data generating devices located in different locations, different transformation parameters can be used accordingly. In other words, the processing circuitry can be configured to obtain the media data from two or more media data generating devices located in different locations. The processing circuitry can be configured to perform the transformation using different transformation parameters for the two or more media data generating devices located in different locations. Therefore, objects characterized by the transformed re-identification code may not be traceable across locations (depending on the configuration of the transformation parameters).

[0018] Similar to time-based gradual adaptation of transformation parameters, gradual adaptation can also be performed gradually between locations, for example, to enable re-identification between images from cameras at adjacent locations rather than from cameras at more distant locations. For example, the processing circuitry can be configured to obtain media data from first, second, and third media data generating devices (e.g., cameras) located at different locations, wherein the second media data generating device is located between the first and third media data generating devices. The processing circuitry can be configured to generate transformation parameters for the media data obtained from the second media data generating device based on linear interpolation between the transformation parameters for the media data obtained from the first and third media data generating devices. Therefore, re-identification can be performed between the transformed re-identification codes of the first and second media data generating devices and between the transformed re-identification codes of the second and third media data generating devices, but not between the transformed re-identification codes of the first and third media data generating devices.

[0019] In various examples, the processing circuitry is configured to provide the transformed re-identification code to a database (e.g., a database accessible by multiple devices via a defined interface). For example, multiple devices may be configured to provide the database with the transformed re-identification codes generated by those devices. For example, the actual re-identification may be performed by an evaluation device accessing the database.

[0020] The processing circuitry can be configured to use a machine learning model to generate the re-identification code. Various frameworks are available for using machine learning techniques to generate re-identification codes.

[0021] Typically, the transformation function can be configured to transform the re-identified code such that the similarity level between the re-identified code and the other re-identified code is equivalent to the similarity level between the transformed re-identified code and the other transformed re-identified code, the similarity level being based on the similarity metric. In other words, the transformation can be performed such that subsequent re-identification is unbiased and satisfies the equivalence class preservation property.

[0022] Various examples of this disclosure relate to a corresponding method for re-identification. The method includes obtaining media data (e.g., via an interface). The method includes generating a re-identification code representing at least a portion of the media data using a hash algorithm. The method includes transforming the re-identification code using a transformation function to obtain a transformed re-identification code. The transformation function transforms the re-identification code such that if the re-identification code is similar to another re-identification code generated by the hash algorithm according to a similarity metric, then the transformed re-identification code is similar to another transformed re-identification code as a transformed version of the other re-identification code. The transformation function transforms the re-identification code based on transformation parameters. The transformation parameters depend on time and / or location. The method includes providing the transformed re-identification code (e.g., via the interface).

[0023] In some implementations, such as in a closed system, the adaptation of the transformation parameters based on time or location can be abandoned. In this case, the following means for generating the transformed re-identification code can be used. Typically, the means may share one or more features with previously presented means. The means includes processing circuitry configured to obtain media data via an interface. The processing circuitry is configured to generate a re-identification code representing at least a portion of the media data using a hash algorithm. The processing circuitry is configured to transform the re-identification code using a similarity-preserving transformation function to obtain the transformed re-identification code. The processing circuitry is configured to provide the transformed re-identification code.

[0024] The example also provides a corresponding method for generating a transformed re-identification code. The method includes obtaining media data (e.g., via an interface). The method includes generating a re-identification code representing at least a portion of the media data using a hash algorithm. The method includes transforming the re-identification code using a similarity-preserving transformation function to obtain the transformed re-identification code. The method includes providing the transformed re-identification code (e.g., via the interface).

[0025] Various examples of this disclosure also provide a system comprising two or more means for re-identification or for generating transformed re-identification codes. When processing two or more means, the time- or location-based transformation factor becomes increasingly relevant.

[0026] As described above, the transformation parameters can be time-dependent. For example, the two or more devices can be configured to use the same transformation parameters at the same time. By using the same transformation parameters at the same time, re-identification can be performed across the transformed re-identification codes of the two or more devices, although (only) for the transformed re-identification codes generated at the same time.

[0027] In some other examples, the transformation parameters may be location-dependent. The two or more devices may be configured to process media data originating from two or more locations and to use different transformation parameters for the media data originating from the two or more locations. Therefore, re-identification across different locations can be intentionally restricted.

[0028] Various examples of this disclosure provide a system comprising at least one means for re-identification or at least one means for generating transformed re-identification codes and an evaluation device. The evaluation device is configured to obtain the transformed re-identification codes from the at least one means and compare the transformed re-identification codes provided by the at least one means with respect to a similarity metric. Therefore, the re-identification based on the transformed re-identification codes can be performed by a separate entity.

[0029] As described above, in some cases, nonlinear transformations can be used to transform re-identification codes, and these transformations can be based on machine learning models. Below, methods and apparatus for training such machine learning models are proposed. The method includes obtaining training data for training the machine learning model. The training data includes at least a plurality of re-identification codes. The method includes using the training data to train the machine learning model. The machine learning model is trained to nonlinearly transform the plurality of re-identification codes into a plurality of transformed re-identification codes, such that if a re-identification code is similar to another re-identification code according to a similarity metric, then the transformed re-identification code is similar to another transformed re-identification code that is a transformed version of that other re-identification code.

[0030] A corresponding apparatus for training a machine learning model includes processing circuitry configured to obtain training data for training the machine learning model. The training data includes at least a plurality of re-identification codes. The processing circuitry is configured to train the machine learning model using the training data. The machine learning model is trained to non-linearly transform the plurality of re-identification codes into a plurality of transformed re-identification codes, such that if a re-identification code is similar to another re-identification code according to a similarity metric, then the transformed re-identification code is similar to another transformed re-identification code that is a transformed version of the other re-identification code.

[0031] In some cases, machine learning models can be employed for both the transformation and generation of (original) re-identification codes. Jointly training two machine learning models can be beneficial. In other words, another machine learning model can be used to generate the multiple identification codes based on media data. The processing circuitry can be configured to jointly train the machine learning model and the other machine learning model.

[0032] Examples of this disclosure also provide a computer program having program code that, when executed on a computer, processor, or programmable hardware component, performs at least one of the methods described above. Attached Figure Description

[0033] The following will describe some examples of apparatus and / or methods by way of example and with reference to the accompanying drawings, wherein,

[0034] Figure 1 A schematic diagram of the re-identification system is shown;

[0035] Figure 2a and Figure 2b A schematic block diagram of an example of a device for re-identification or a device for generating a transformed re-identification code is shown.

[0036] Figure 2c and Figure 2d A flowchart illustrating an example of a method for re-identification or a method for generating transformed re-identification code is shown;

[0037] Figure 3a and Figure 3b A schematic block diagram of an example system is shown, including at least one means for re-identification or at least one means for generating a transformed re-identification code;

[0038] Figure 4a A flowchart illustrating an example method for training a machine learning model is shown; and

[0039] Figure 4b A schematic block diagram of an example apparatus for training machine learning models is shown. Detailed Implementation

[0040] Some examples will now be described in more detail with reference to the accompanying drawings. However, other possible examples are not limited to the features of these embodiments described in detail. Other examples may include modifications of these features, as well as equivalent and alternative features. Furthermore, the terminology used herein to describe certain examples should not limit other possible examples.

[0041] Throughout the description of the accompanying drawings, the same or similar reference numerals refer to the same or similar elements and / or features, which may be implemented identically or in modified form while providing the same or similar function. For clarity, the thickness of lines, layers, and / or regions in the drawings may also be enlarged.

[0042] Unless otherwise explicitly defined in individual cases, when “or” is used to combine two elements A and B, it will be understood to disclose all possible combinations, namely, A only, B only, and A and B. As alternative wording for the same combination, “at least one of A and B” or “A and / or B” can be used. The same applies to combinations of more than two elements.

[0043] If the singular form, such as "an," "a," and "the," is used, and the use of only a single element is not explicitly or implicitly defined as mandatory, then other examples may use several elements to achieve the same function. If a function is described below as being implemented using multiple elements, then other examples may use a single element or a single processing entity to achieve the same function. It should also be understood that the terms "comprising" and / or "including" describe the presence of a particular feature, whole, step, operation, process, element, component, and / or group thereof when used, but do not preclude the presence or addition of one or more other features, wholes, steps, operations, processes, elements, components, and / or groups thereof.

[0044] Various aspects of this disclosure relate to a method, apparatus, system, and computer program for anonymous re-identification.

[0045] The following section provides an example illustrating the basic principles of re-identification. In this example, two surveillance cameras are used. Two images are obtained from these cameras, each showing a person. These images can be acquired from different angles and under different lighting conditions (or even from the same camera at different times). Even without knowing any actual identity, the re-identification system seeks to infer whether the two images depict the same person or whether they actually show two different people. Furthermore, re-identification is not limited to the detection of people in images. For example, it can be performed on animals or objects, and other types of media such as 3D models, text, or audio can also be used.

[0046] Figure 1 A schematic diagram of the different components of an exemplary re-identification system without a transformation component is shown. Three cameras 120a, 120b, and 120c are used to record two people 110a and 110b, with cameras 120a and 120b recording the same person 110a. The resulting images 130a, 130b, and 130c are taken from different angles. Based on these images, re-identification codes 140a, 140b, and 140c are generated, where re-identification codes 140a and 140b are similar because images 130a and 130b depict the same person, and re-identification code 140c is dissimilar (i.e., different) from the other re-identification codes 140a and 140b. In other words, re-identification codes 140a and 140b are similar for the two first images 130a and 130b (which depict the same person from different angles), while codes 140b and 140c are different for the two final images 130b and 130c (because the images depict two different people).

[0047] There are multiple use cases where re-identification can be used instead of systems that create absolute identities, such as filtering duplicate detections when counting unique visitors at a specific location during the day, using sensors at each endpoint to estimate travel time between two different locations, calculating the dwell time of a customer at a single location, and using non-overlapping cameras for wide-area people tracking, etc.

[0048] In some systems, re-identification is performed by applying a hash function to each image to generate a so-called re-identification code. The generated hash code represents the people, animals, or objects visible within each image and can be compared using a similarity metric.

[0049] The various examples disclosed herein extend the concept of re-identification codes by adding an "encryption layer" on top of the re-identification codes to generate transformed re-identification codes. The applied hash function, together with the transformation action, possesses a so-called "equivalence class preservation" (ECP) property, which can also be an equidistant property or a "(near) distance preservation" property, because the distances between the transformed re-identification codes are at least similar to, if not equal to, the distances between the re-identification codes upon which the transformed re-identification codes are based. The ECP property is similar to the property of Locality Sensitive Hash (LSH), and is described below.

[0050] Mathematically, let f be a hash function, e be an ECP-preserving transformation function (encryption function), and let h1 = e(f(I1)) and h2 = e(f(I2)) be the re-identification codes for images I1 and I2, respectively. The ECP property ensures that the two transformed re-identification codes are approximately similar in some suitable similarity measure; that is, h1 ≈ h2 if and only if the person in image I1 is the same as the person in image I2 (even if the images were taken from different angles). Therefore, after evaluating the hash function of two images, if the distance between the two re-identification codes is small, it can be inferred that they belong to the same person. On the other hand, if the distance is large, it is very likely that the images contain different people.

[0051] Such visual re-identification systems can be implemented using various methods. Many systems use handcrafted visual features (such as gender, age, facial features, clothing color, hairstyle, body shape, etc.), but to achieve the highest possible accuracy, many methods rely on deep learning-based techniques such as triplet loss. However, to illustrate the concept, the exact method used to compute the re-identification code is not important.

[0052] In some systems, a person's re-ID code (short for re-identification code) may be the same at different times, leading to potentially absolute identification of the individual. This is likely due to the consistency of traditional re-identification codes over time. For example, if a person is captured by a specific camera at a specific time t1, their identity can be identified at a much later time t2, potentially revealing their personal identity, where an image might be obtained, for example, from their passport or driver's license. If re-identification is applied in this way, it may inadvertently also enable non-anonymous identification of people. In many systems, this identification feature is undesirable as it could lead to data leaks. It is not possible to mitigate this drawback using direct encryption methods, such as encrypting the re-identification code without losing the desired re-identification capability. Because individual devices dependent on previous methods may not provide "privacy-protected by design," such distributed systems for re-identification can, for example, keep all communications confidential and securely store re-identification values ​​by using secure devices or communicating over secure networks. In distributed multi-camera systems with multiple communicating devices, this can add an additional burden to the overall system design. Furthermore, this problem may not be mitigated by traditional cryptographic methods. Since almost all existing encryption methods lack the "equivalence class preservation" property due to the cryptographic avalanche effect, a small change in unencrypted data can lead to a large change in encrypted data, thus potentially failing to maintain re-identification capabilities. In other words, some methods for re-identification may not provide "privacy-protected by design."

[0053] The various examples disclosed employ different approaches, where re-identification across multiple locations or across time is constrained by design. Examples can provide a method for anonymous re-identification and thus enable "privacy-protected by design" (by periodically or locally, efficiently, and irreversibly modifying the re-identification hash function). This allows for the insecure transmission and storage of re-identification codes without violating privacy regulations, as privacy is protected even if the transformed code is stored in any storage system without any guarantees regarding privacy. The proposed concept is based on extending existing (non-privacy-enhanced, non-anonymous, commonly used) re-identification hash functions with transformation functions (e.g., using additional specialized cryptographic primitives). Compared to traditional cryptographic schemes used for confidentiality, the proposed concept does not eliminate the ability to perform re-identification even after the re-identification code is encrypted (by maintaining ECP properties). Compared to some other systems, re-identification code matching can be performed on insecure servers, even by untrusted third parties. Moreover, the transformed re-identification code can be stored indefinitely in an untrusted database without sacrificing privacy. The proposed concept improves upon the concept of re-identification by enabling the enhancement of existing re-identification algorithms through "privacy-preserving design" by adding new additional primitives. The proposed concept allows for the combination of existing or novel re-identification systems with (dynamic) cryptographic primitives (i.e., transformation functions) possessing ECP properties (on top of the re-identification system).

[0054] In the following text, it is assumed that the system used to compute the re-identification code and subsequently encrypt the re-identification code is embedded in the camera. This is not necessary for the proposed concept to function, but it is useful for illustrating the use cases. The method, while potentially useful for embedded or edge devices, can also be used for cloud-based implementations, where the subsequently presented device or evaluation equipment is implemented in the cloud.

[0055] Figure 2a and Figure 2b A schematic block diagram of an example of a device 20 for re-identification or for generating a transformed re-identification code is shown; the device includes an interface 22 and processing circuitry 24. Optionally, the device includes one or more storage devices 26. The processing circuitry is coupled to the interface and optionally the one or more storage devices. Typically, the functionality of the device is provided by processing circuitry, for example, combining the interface (for exchanging information) and / or one or more storage devices (for storing information).

[0056] Processing circuitry 24 is configured to acquire media data via interface 22. The processing circuitry is configured to generate a re-identification code representing at least a portion of the media data using a hash algorithm. The processing circuitry is configured to transform the re-identification code using a transformation function to obtain a transformed re-identification code. The transformation function is configured to transform the re-identification code such that if the re-identification code is similar to another re-identification code generated by the hash algorithm according to a similarity metric, the transformed re-identification code is similar to another transformed re-identification code that is a transformed version of that other re-identification code. The transformation function is configured to transform the re-identification code based on transformation parameters. For example, the transformation parameters depend on time and / or location. The processing circuitry is configured to provide the transformed re-identification code (e.g., via interface 22). Figure 2b A camera device 200 including the means 22 is also shown. For example, the camera device 200 may also include an imaging sensor for generating media data (e.g., as image data).

[0057] Figure 2c and Figure 2d A flowchart illustrating an example of a method for re-identification or a method for generating transformed re-identification code is provided. Generally, this method can cover... Figure 2a and / or Figure 2b The function of the device. Therefore, the features described in conjunction with the device can also be applied to the corresponding method (and vice versa). The method includes, for example, acquiring media data 210 by acquiring an image from a sensor (e.g., via an interface). The method includes generating (i.e., calculating) a re-identification code 220 representing at least a portion of the media data using a hash algorithm. The method includes transforming (i.e., encrypting) the re-identification code using a transformation function to obtain a transformed re-identification code 230. The transformation function transforms the re-identification code such that if the re-identification code is similar to another re-identification code generated by the hash algorithm according to a similarity metric, the transformed re-identification code is similar to another transformed re-identification code as a transformed version of that other re-identification code. The transformation function transforms the re-identification code based on transformation parameters. For example, the transformation parameters depend on time and / or location. The method includes providing a transformed re-identification code 240.

[0058] The following description involves Figure 2a and / or Figure 2b The device 20 or camera device 200, and involves Figure 2c and / or Figure 2d The corresponding methods.

[0059] Various aspects of this disclosure relate to an apparatus, method, and computer program for re-identification, specifically an apparatus for generating re-identification codes for use in a re-identification system. Compared to various other systems, this apparatus, method, and computer program build upon the general concept of re-identification by adding a transformation layer that prevents the tracking of people or objects across time or different locations while maintaining the ability to re-identify. For example, the re-identification code can be encrypted through a transformation function. Therefore, various aspects of this disclosure relate to an apparatus, method, and computer program for anonymous re-identification.

[0060] The proposed concept addresses this problem by adding a dynamically changing encryption layer (i.e., a transformation function) on top of existing re-identification functions to maintain ECP characteristics. In other words, the proposed concept allows for the construction of re-identification codes with built-in time intervals (or location constraints), outside of which the re-identification codes are intentionally rendered ineffective. This method results in anonymous re-identification and "privacy-protected by design," so that re-identification values ​​can even be transmitted to insecure devices or over insecure networks, and the re-identification code matching process can be performed at a later time by an untrusted server or even a third party. Typically, the proposed concept is based on dynamically changing the re-identification scheme in an efficient manner (e.g., daily or across locations), making the re-identification code inconsistent across different dates and / or locations while still maintaining its consistency within each day or each location.

[0061] In general, anonymized re-identification is achieved using at least two novel aspects: the transformation of re-identification codes that preserves equivalence class preservation properties and the time or location dependency of the transformation. The first aspect aims to preserve re-identification functionality only among transformed re-identification codes derived from the same (or similar) transformation parameters, while the second aspect aims to specify cases where different transformation parameters are used. For example, using different transformation parameters for different times can prevent tracking of people across different times. Similarly, using different transformation parameters for different locations can prevent tracking of people across different locations. Therefore, the resulting transformed re-identification codes can be stored and / or transmitted on potentially insecure systems, thereby reducing the required implementation effort.

[0062] The re-identification code is generated based on media data. Typically, media data can be video, audio, or audiovisual media data. For example, media data can be image data, video data, audio data, a three-dimensional representation of object motion (i.e., three-dimensional body motion), or text-based media data / output. Therefore, media data can originate from various types of media data generating devices, such as cameras or camera sensors, microphones, 3D scanners, or text acquisition systems.

[0063] The processing circuitry can be configured to obtain media data from one or more media data generating devices, for example, locally or via a (computer network). Therefore, interface 22 may be or include a local interface for communication within the device, or interface 22 may be or include an interface for communication via a computer network such as the Internet or a local network. For example, in some cases, the device can be used to generate re-identification codes for media data from more than one media data generating device, wherein the media data generating devices are located in different locations. Therefore, media data can be acquired from or originate from two or more media data generating devices located in different locations.

[0064] For example, as described above, the device can be part of a camera device 200 that includes a camera sensor 28. In this case, the media data generating device can be the camera device or the camera sensor 28 of the camera device, and the processing circuitry can obtain media data from the camera sensor 28. However, in some cases, the device can be external to the camera device, and the processing circuitry is configured to obtain media data from a camera external to the device. For example, the device can be implemented in a network device, an edge device (i.e., a network device located near the media data generating device), or a cloud server. In both cases, generally, the processing circuitry is configured to obtain media data from the imaging sensor of the camera, where the media data is one of image data and video data.

[0065] Depending on the type of media data, a suitable hash algorithm can be selected to generate the re-identification code. The processing circuitry is configured to use a hash algorithm to generate a re-identification code representing at least a portion of the media data, where the hash algorithm is suitable for the media data at hand. The proposed system can also be used in domains beyond person re-identification. For example, the proposed concept can be applied to cyclists, cars, luggage, and other objects or animals. For instance, Ye et al.'s "Deep Learning for Person Re-identification: A Survey and Outlook" (2020) provides an example of a deep learning-based hash algorithm for re-identification. Therefore, the processing circuitry can be configured to use machine learning models (e.g., deep learning networks) to generate the re-identification code. Newer techniques can also be employed instead of previously used re-identification systems, or the re-identification system can be improved to work in conjunction with (dynamic) cryptographic primitives.

[0066] Various types of re-identification codes exist. The examples given below assume a hash-based re-identification code. Specifically, an example is given where the re-identification code is a vector comprising 128 values. However, other types of re-identification codes can also be used, where the transformation functionality is appropriately adjusted.

[0067] A re-identification code represents at least a portion of the media data. For example, a re-identification code can represent an object or person as represented by the media data. Therefore, a transformed re-identification code can represent an object or person as represented by the media data.

[0068] To perform the above process without periodically rebuilding the entire basic re-identification system (a very laborious process), an additional layer, namely a transformation function, is added on top of the existing re-identification system. Therefore, the processing circuitry is configured to use the transformation function to transform the re-identification code (generated using an existing or novel re-identification system / algorithm) to obtain the transformed re-identification code. This additional layer of transformation function could, for example, be a key-dependent dynamic encryption primitive with ECP characteristics, which allows the re-identification properties to be maintained while the re-identification code is encrypted (unlike classical encryption schemes that lose re-identification properties as described above).

[0069] Mathematically, f represents the existing (traditional) re-identification system used to generate re-identification codes. According to a predefined schedule, such as daily or per location, a new key k is assigned to all devices (e.g., using a traditional public key infrastructure). For example, the key k can be a transformation parameter, or k can be a cryptographic class secret from which the transformation parameter originates. Let e k It is a cryptographically secure bijective transform function with ECP properties, which depends on the shared key k. Then, it is passed through a dynamic encryption layer e. k Combining with the existing re-identification function f, we present the proposed final anonymous dynamic re-identification function c for operating on image I. k That is, c k (I)=e k (f(I)).

[0070] In the following text, it is assumed that the key changes daily, i.e., the transformation function is time-based. Let k t-1 k represents yesterday's key. t This represents today's key. Each day, all devices can verify the key k from yesterday. t-1 And the corresponding encryption functions are securely destroyed (e.g., by overwriting the relevant memory and storage areas). Because the key changes daily, it is impossible to compare a re-identification code from yesterday with a re-identification code from today. In other words, the following anonymous re-identification properties are satisfied:

[0071] ck t (I1)≈ck t (I2) and ck t+1 (I1)≈ck t+1 (I2)

[0072] but

[0073] ck t (I1)≠ck t+1 (I2) and ck t (I2)≠ck t+1 (I1)

[0074] In other words, the similarity preservation or equivalence class preservation property is satisfied. Therefore, the transformation function is configured to transform the re-identified code such that if the re-identified code is similar to another re-identified code generated by a hash algorithm according to a similarity metric, then the transformed re-identified code is similar to another transformed re-identified code that is a transformed version of that other re-identified code. On the other hand, if the re-identified code is different from another re-identified code generated by a hash algorithm according to a similarity metric, then the transformed re-identified code should (or more precisely, in fact) be different from the other transformed re-identified code. More generally, the transformation function can be configured to transform the re-identified code such that the similarity level between the re-identified code and another re-identified code is equivalent to the similarity level between the transformed re-identified code and another transformed re-identified code, said similarity level being based on a similarity metric. For example, if the similarity level is high, the two re-identified codes and the two transformed re-identified codes can be similar respectively, and if the similarity level is low, the two re-identified codes and the two transformed re-identified codes can be different respectively.

[0075] In various examples, transformation functions can be used to perform linear transformations on re-identification codes. In other words, a transformation function can be configured to perform a linear transformation of the re-identification code based on transformation parameters. One specific implementation of a linear transformation is a transformation based on a rotation matrix. In other words, a transformation function can be configured to transform the re-identification code using a rotation matrix, where the rotation matrix is ​​based on transformation parameters. Typically, a rotation matrix is ​​a matrix used to perform rotations (e.g., rotation of a vector) in a given coordinate space by multiplying a vector by the rotation matrix.

[0076] The following section describes the specific construction of a dynamic encryption function with ECP properties. For simplicity, it can be assumed that the original re-identification code h is a vector with 128 floating-point values, each in the range -1 to +1. Typically, this assumption of using a 128-dimensional vector with floating-point components can be changed to any dimension and other numerical domain, such as integers or Boolean values. (Choose e) k As an encryption function used for transformation, this function is defined by e k (h)=R k ×h is given, where R kR is an irreversibly 128·128 random rotation matrix dependent on the key k, where the operation × denotes matrix multiplication. Since the rotation preserves distance, the generated function still possesses the ECP property required to keep the re-identification process functioning. R can be generated in a cryptographically secure manner by initializing a secure random number generator with k and subsequently sampling the random 128-dimensional rotation matrix (e.g., by sampling individual matrix components from a normal distribution using a cryptographically secure random number generator and subsequently normalizing the matrix by performing Gram-Schmidt orthogonalization). k In other words, the elements of the rotation matrix can be based on pseudo-random numbers derived from the transformation parameters (e.g., cryptographic secrets derived from the transformation parameters). Subsequently, the pseudo-random numbers of the generated matrix can be normalized using Gram-Schmidt orthogonalization. For example, the processing circuit can be configured to generate the rotation matrix based on the transformation parameters by generating pseudo-random numbers and normalizing the resulting matrix. Because the cryptographic operator matrix has a large number of free parameters, and because of its strongly cryptographic construction process, even using R... k Such linear operators can also provide sufficient security in most possible attack scenarios.

[0077] Alternatively, the transformation function can be configured to perform a non-linear transformation of the re-identification code. For example, a more complex hash function can be used instead of matrix multiplication. In some implementations, deep learning can be used to create more complex, more non-linear functions (while still maintaining the equivalence class preservation property). In other words, the transformation function can be configured to perform a non-linear transformation using a machine learning model. For example, the machine learning model can take the re-identification code and transformation parameters as input and provide the transformed re-identification code at the output. Figure 4a and Figure 4b The training of a suitable machine learning model is described in more detail. Furthermore, end-to-end training of combined deep networks (lower-layer re-identification systems combined with dynamic encryption schemes) can be used to achieve greater robustness and accuracy.

[0078] Typically, to prevent tracking of people or objects across time and / or location, the transformation parameters, and therefore the transformation itself, depend on time and / or location. Time can generally refer to the time when the transformation of the re-identification code is performed, or the time when the media data is acquired, as the device can be used for near-instantaneous generation and transformation of the re-identification code. In some cases, these two time instances can be decoupled; for example, the transformation can be applied retrospectively to previously generated media data. On the other hand, location can refer to the location from which the media originates (e.g., in a system where a device generates transformed re-identification codes for media data from different media data generating devices located at different locations), or to the device itself (e.g., if the same transformation parameters are to be used to process media data from different media data generating devices) or the location of a device situated in the same location as the media data generating device.

[0079] The following section describes the implementation of time-dependent transformation parameters, followed by location-dependent transformation parameters.

[0080] For example, to avoid cross-date re-identification and thus the danger of absolute identification, various examples of this disclosure can use time-varying transformation parameters. Therefore, to apply new or adapted transformation parameters over time, the transformation parameters can be adapted based on a timetable. In other words, the processing circuitry can be configured to adapt the transformation parameters according to a predefined timetable. For example, the processing circuitry can be configured to adapt the transformation parameters daily, half-day, or weekly according to the desired privacy level. For example, the processing circuitry can be configured to generate or select new transformation parameters according to a predefined timetable. After adapting the transformation parameters, to prevent the retrospective regeneration of the transformed re-identification code, previously used parameters can be discarded (or more precisely, deleted). In other words, the processing circuitry can be configured to delete previously used transformation parameters after adapting the transformation parameters. For example, if transformation parameters or lower-level keys are periodically destroyed, the original re-identification codes from previous days cannot be obtained even if the device happens to be compromised at a certain point in time. Therefore, the obtained transformed re-identification codes can be freely shared with anyone without revealing anyone's identity, thus providing anonymous re-identification codes.

[0081] In some examples, incremental / differential key variations can be employed in the transformation function. For instance, if the transformation function is time-dependent, this would result in an anonymized sliding time window, rather than a current fixed window such as from midnight to midnight. In other words, the processing circuitry can be configured to generate two transformation parameters for two time points (e.g., midnight on two separate days). These two transformation parameters can be different enough to make tracking of a person or object across the two transformation parameters impossible. The processing circuitry can be configured to progressively adapt the transformation parameters between the two time points based on linear interpolation between the two transformation parameters. In other words, between two time points, the transformation parameters used to transform the re-identification code can be progressively adapted based on linear interpolation from the first of the two transformation parameters to the second of the two transformation parameters. Taking rotation matrices as an example, a first rotation matrix and a second rotation matrix, each with multiple elements, can be generated. Using linear interpolation, a third rotation matrix can be generated, where each element of the third matrix is ​​based on linear interpolation between the corresponding elements of the first and second matrices. Subsequently, the third matrix can be normalized.

[0082] Similarly, incremental / differential key variations can be used across different locations within a region. The greater the distance between locations within a region, the less similar the resulting re-identification codes may be. For example, as described above, the processing circuitry can be configured to obtain media data from two or more media data generation devices located at different locations. Typically, to make re-identification between transformed re-identification codes generated for media data originating from two locations impossible, the processing circuitry can be configured to perform transformations using different transformation parameters for the two or more media data generation devices located at different locations. However, a third media data generation device may be located between two media data generation devices. Transformation parameters for this third media data generation device can be selected such that re-identification of the transformed re-identification code generated for media data originating from the first two locations is possible. In other words, the processing circuitry can be configured to obtain media data from first, second, and third media data generation devices located at different locations, where the second media data generation device is located between the first and third media data generation devices. Similar to the example of gradual adaptation over time, the processing circuitry can be configured to generate transformation parameters for media data obtained from a second media data generation device based on linear interpolation between transformation parameters for media data obtained from a first media data generation device and a third media data generation device. As a result, re-identification can be performed between transformed re-identification codes generated based on media data from the first and second media data generation devices, and between transformed re-identification codes generated based on media data from the second and third media data generation devices, but not between transformed re-identification codes generated based on media data from the first and third media data generation devices. In various examples, even finer-grained systems can be used, where two transformation parameters are generated for two arbitrary positions located on either side of the media data generation device group, and the transformation parameters for the media data generation devices are generated based on position-based linear interpolation between the two transformation parameters.

[0083] Typically, various options exist for obtaining suitable transformation parameters. For example, transformation parameters can be generated on-device (i.e., via processing circuitry) based on a cryptographic secret, which can be shared between devices configured to generate the same transformation parameters (e.g., time-dependent). In other words, transformation parameters can be derived from a cryptographic secret. Therefore, processing circuitry can be configured to generate transformation parameters based on a cryptographic secret and time / or location, such as a rotation matrix or input parameters for a machine learning model employed by the transformation function. For example, a cryptographic secret can be used in conjunction with time and / or location to generate a seed for generating pseudo-random numbers for the transformation parameters. For example, strong cryptographic methods can be used to construct new keys (i.e., transformation parameters) or encryption methods from a single shared secret. Irreversible key generation can be used to improve security. For example, in some examples, irreversible, shared, dynamic transformation parameters (i.e., key values) can be used without a persistent network connection. After sharing the initial secret seed, the following methods can be applied: k t =AES(k t-1 k t-1 The AES(x, k) operation applies the Advanced Encryption Standard (AES) to the text x using a key (i.e., a cryptographic secret) k, thus obtaining today's key k. t Yesterday's key k t-1 It can encrypt itself and then destroy it.

[0084] Finally, the processing circuitry is configured to provide the transformed re-identification code, for example, via interface 22. Typically, the processing circuitry can be configured to store the re-identification code, for example, using one or more storage devices or using a database, such as a database accessible by multiple devices via a defined interface (e.g., via a computer network and / or according to a predefined protocol) and / or external to the device and / or camera equipment. In other words, the processing circuitry is configured to provide the transformed re-identification code to the database. For example, the transformed re-identification code can be processed by an evaluation device that accesses the database.

[0085] The proposed concept offers a combination of computer vision and cryptography. Specifically, it enables privacy-enhancing visual person re-identification using secure video analytics on camera-based distributed, embedded systems.

[0086] Interface 22 may correspond to one or more inputs and / or outputs for receiving and / or transmitting information within a module, between modules, or between modules of different entities, whereby the information may be a digital (bit) value according to a specified code. For example, interface 22 may include interface circuitry configured to receive and / or transmit information. For example, interface 22 may be suitable for communication within camera device 200. Additionally or alternatively, interface 22 may be suitable for communication via a computer network, such as via a wireless or wired computer network.

[0087] The processing circuitry 24 can be implemented using one or more processing units, one or more processing devices, any means for processing (e.g., a processor), a computer, or a programmable hardware component that can run with appropriately adapted software. In other words, the functions of the processing circuitry 24 can also be implemented in software, and then the software can be executed on one or more programmable hardware components. Such hardware components may include, for example, a general-purpose processor such as a central processing unit (CPU), a digital signal processor (DSP), a microcontroller, etc.

[0088] In at least some embodiments, one or more storage devices 26 may include at least one element from the group of computer-readable storage media such as magnetic or optical storage media, such as hard disk drives, flash memory, floppy disks, random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electronically erasable programmable read-only memory (EEPROM), or network memory.

[0089] Combined with the proposed concept or one or more examples described above or below (e.g. Figure 1 and Figures 3a to 4b (This section briefly describes the combination) Figures 2a to 2d Further details and aspects of the camera device or method, apparatus, and computer program described herein. The camera device or method, apparatus, and computer program may include one or more additional optional features corresponding to one or more aspects of the proposed concept or one or more examples described above or below.

[0090] Figure 3a and Figure 3b Schematic block diagrams of systems 300, 310 including at least one means 20 for re-identification or at least one means 20 for generating transformed re-identification codes are shown; in combination Figures 2a to 2d A device for generating and transforming re-identification codes is introduced. Figures 3a to 3b The illustration shows a background where the device can be used. Typically, the system may include a single device 20, for example, as part of a camera device 200. As shown in the figure, Figure 3aThe system 300 includes two camera devices 200 (or more generally, two media data generating devices 200), each including a device 20. Figure 3b System 310 includes multiple camera devices 200, each including a device 20. In other words, systems 300 and 310 include two or more devices 20. Figure 3b As shown, device 20 may include one or more additional components, such as random access memory (RAM) 312 or one or more optional components 314. Figure 3b The illustrated device 20 includes a network interface 22a, which can be combined with Figure 2a and Figure 2b This is part of the interface 22 described.

[0091] In addition to device 20 or a camera device having device 20, the system may optionally include an evaluation device that can be used to perform re-identification using the transformed re-identification code. In other words, Figure 3a and Figure 3b The system shown includes systems with databases (e.g., combined with...) Figures 2a to 2d An optional evaluation device 30 (of the introduced database) is coupled to the apparatus 20. For example... Figure 3b As shown, the evaluation device 30 can be implemented as a re-identification code matching server 30 capable of communicating with a database 32. The evaluation device can be configured to obtain transformed re-identification codes from at least one device 20 and compare the transformed re-identification codes provided by the at least one device according to a similarity metric. For example, the evaluation device can be configured to obtain transformed re-identification codes from at least one device 20 via the database 32. Typically, the evaluation can be configured to perform re-identification based on the transformed re-identification codes of the devices. Typically, the evaluation device 30 can be external to the device 20. However, in some examples, one of the devices may include the evaluation device 30. Figure 3b As shown, the evaluation device 30 can provide visualization 34 to the end user. For example, the visualization can show the results of the re-identification performed by the evaluation device 30.

[0092] Various types of results can be visualized. For example, an evaluation device can be configured to estimate the travel time of a person, animal, or vehicle between two different locations using transformed re-identification codes generated based on image data from sensors at each endpoint. Thus, visualization can show a visual representation and / or statistical evaluation of the estimated travel time of different people, animals, or vehicles.

[0093] Alternatively or additionally, the evaluation device can be configured to filter duplicate detections when counting unique visitors at a specific location throughout the day based on the transformed re-identification code. Visualization can show a visual representation of the count of (filtered) unique visitors at that specific location and / or its statistical evaluation, such as a histogram over time.

[0094] In some examples, the assessment device can be configured to calculate a customer's dwell time at a single location based on the transformed re-identification code. Therefore, visualizations can show a visual representation of the customer's dwell time at that location and / or its statistical assessment, such as a histogram.

[0095] The evaluation device can be configured to perform wide-area people tracking using non-overlapping cameras based on the transformed re-identification code. For example, a two-dimensional image and a three-dimensional representation of a person can be used for tracking. Accordingly, visualization can show a visual representation of the person being tracked.

[0096] Depending on whether the transformation parameters used by one or more devices depend on time or location, different criteria can be met by the transformation parameters used. For example, the transformation parameters may depend on time (i.e., the current time at the device). Two or more devices can be configured to use the same transformation parameters at the same time, for example, such that the transformed re-identification codes generated at the same time are suitable for re-identification.

[0097] On the other hand, if the transformation parameters depend on location, then the transformation parameters can vary depending on the location from which each media data originates. In other words, if combined with... Figures 2a to 2d As described, one or more (or two or more devices) can be configured to process media data originating from two or more locations, and to use different transformation parameters for the media data originating from said two or more locations. Furthermore, for example, in a scenario with three or more media data generation devices, a gradual adaptation based on the transformation parameters from the respective locations from which the media data originates can also be applied.

[0098] Combined with the proposed concept or one or more examples described above or below (e.g. Figures 1 to 2d ,to Figures 4a to 4b To provide further details and aspects of the system, the following description is provided. The system may include one or more aspects corresponding to the proposed concept or one or more additional optional features of one or more examples described above or below.

[0099] The following sections present various examples of machine learning models used to train nonlinear transformations that can be used to perform re-identification codes. Figure 4aA flowchart illustrating an example of a method for training a machine learning model is shown. The method includes obtaining training data 410 for training the machine learning model. The training data includes at least a plurality of re-identification codes. The method includes training a machine learning model 420 using the training data. The machine learning model is trained to non-linearly transform the plurality of re-identification codes into a plurality of transformed re-identification codes, such that if a re-identification code is similar to another re-identification code according to a similarity metric, then a transformed re-identification code is similar to another transformed re-identification code that is a transformed version of that other re-identification code.

[0100] Figure 4b A schematic block diagram illustrating an example of a corresponding device 40 for training a machine learning model is shown. Typically, device 40 includes components configured to perform... Figure 4a The method includes processing circuitry 44. For example, the processing circuitry is configured to obtain training data for training a machine learning model. The processing circuitry is configured to use the training data to train the machine learning model. Optionally, the apparatus 40 also includes an interface 42 for exchanging information (e.g., training data and machine learning model), and one or more storage devices 46 for storing information (e.g., training data and machine learning model). The processing circuitry is coupled to the interface and the one or more storage devices.

[0101] The following description involves Figure 4a Methods and Figure 4b The corresponding device 40.

[0102] Figure 4a and Figure 4bThis relates to the training of machine learning models that can be used to perform nonlinear transformations on re-identification codes. Generally, machine learning refers to algorithms and statistical models that allow computer systems to perform specific tasks without explicit instructions, relying instead on models and inferences. For example, in machine learning, rule-based data transformations can be used instead of those inferred from analysis of historical and / or training data. For instance, machine learning models or algorithms can be used to analyze image content. To enable a machine learning model to analyze image content, it can be trained using training images as input and training content information, or using classification information as output. By training the machine learning model with a large number of training images and associated training content information, the model “learns” to recognize image content, and thus can be used to identify image content not included in the training images. The same principle can be applied to other types of sensor data: by training a machine learning model using training sensor data and a desired output, the model “learns” a transformation between the sensor data and the output, which can be used to provide outputs based on untrained sensor data provided to the model. In the concepts presented in this disclosure, machine learning can be used in two ways: for performing nonlinear transformations on re-identification codes, and for generating re-identification codes in the first place.

[0103] Machine learning models are trained using training data. The example specified above uses a training method called "supervised learning." In supervised learning, a machine learning model is trained using multiple training samples (where each sample can include multiple input data values) and multiple desired output values; that is, each training sample is associated with a desired output value. By specifying training samples and desired output values, the machine learning model "learns" which output value to provide based on input samples similar to those provided during training.

[0104] A similar approach can be chosen to train a machine learning model based on the training data. For example, the training data may include multiple re-identification codes and multiple exemplary transformation parameters as input data values, and multiple expected output values ​​representing the expected nonlinear transformation of the multiple re-identification codes with respect to the multiple exemplary transformation parameters.

[0105] One type of machine learning algorithm used to determine similarity between media is represented as triplet loss. In triplet loss, a baseline input is compared to both a positive input and a negative input. For example, triplet loss can be used to train a machine learning model to first generate re-identification codes. However, triplet loss can also be used to train a machine learning model to transform re-identification codes. For example, multiple re-identification codes can be used as training input along with multiple exemplary transformation parameters. By training a machine learning model such that, relative to a given re-identification code provided at the input, a transformed version of a re-identification code similar to the given re-identification code is provided as a positive input, and a transformed version of a re-identification code different from the given re-identification code or the given re-identification code itself is provided as a negative input, the machine learning model can be trained to perform non-linear transformations on multiple re-identification codes based on multiple exemplary transformation parameters.

[0106] Reinforcement learning is another set of machine learning algorithms. In other words, reinforcement learning can be used to train machine learning models. In reinforcement learning, one or more software actors (called "software agents") are trained to take actions in an environment. Rewards are calculated based on the actions taken. Reinforcement learning is based on training one or more software agents to select actions that increase the cumulative reward, resulting in the formation of software agents that become better at performing a given task (as demonstrated by the increase in rewards).

[0107] For example, reinforcement learning can be used to train machine learning models. In this case, multiple re-identification codes can be processed by a machine learning model that can be iteratively adapted using reinforcement learning with a reward function that rewards outputs that a) satisfy the equivalence class preservation property and b) are nonlinear transformations.

[0108] Typically, another machine learning model can be used to generate multiple recognition codes based on media data. This other machine learning model can be combined with... Figure 2a and / or Figure 2b The hash function is introduced. The training of another machine learning model can be adapted based on a machine learning-based transformation of the obtained re-identification code. In other words, the machine learning model and another machine learning model can be jointly trained. For example, combined training based on triplet loss can be applied to another machine learning model and another machine learning model, where the training input of the other machine learning model is based on media data, and the input of the machine learning model is based on the re-identification code provided by the other machine learning model.

[0109] Machine learning algorithms are typically based on machine learning models. In other words, the term "machine learning algorithm" can refer to a set of instructions that can be used to create, train, or use a machine learning model. The term "machine learning model" can refer to a data structure and / or set of rules that represents, for example, the knowledge learned based on training performed by a machine learning algorithm. In the examples, the use of a machine learning algorithm can mean the use of underlying machine learning models (or multiple underlying machine learning models). The use of a machine learning model can mean the use of a machine learning algorithm to train a machine learning model and / or the use of a data structure / rule set as a machine learning model.

[0110] For example, a machine learning model can be an artificial neural network (ANN). An ANN is a system inspired by biological neural networks, such as those found in the brain. An ANN consists of multiple interconnected nodes and multiple connections (so-called edges) between the nodes. There are typically three types of nodes: input nodes that receive input values, hidden nodes that are connected (only) to other nodes, and output nodes that provide output values. Each node can represent an artificial neuron. Each edge can transfer information from one node to another. The output of a node can be defined as a (non-linear) function of the sum of its inputs. The inputs to a node can be used in this function based on the "weights" of the edges or nodes that provide the input. The weights of nodes and / or edges can be adjusted during the learning process. In other words, training an artificial neural network can include adjusting the weights of the nodes and / or edges of the artificial neural network to achieve the desired output for a given input. In at least some examples, a machine learning model can be a deep neural network, such as a neural network that includes one or more layers of hidden nodes (i.e., hidden layers), preferably with multiple layers of hidden nodes. For example, if a triplet loss function is used, an ANN can be a so-called Siamese neural network (SNN).

[0111] Interface 42 may correspond to one or more inputs and / or outputs for receiving and / or transmitting information within a module, between modules, or between modules of different entities, whereby the information may be a digital (bit) value according to a specified code. For example, interface 42 may include interface circuitry configured to receive and / or transmit information. Additionally or alternatively, interface 42 may be adapted for communication via a computer network, such as communication via a wireless or wired computer network.

[0112] The processing circuitry 44 can be implemented using one or more processing units, one or more processing devices, any means for processing (e.g., a processor), a computer, or a programmable hardware component that can run with appropriately adapted software. In other words, the functionality of the processing circuitry 44 can also be implemented in software, and then the software can be executed on one or more programmable hardware components. Such hardware components can include general-purpose processors, digital signal processors (DSPs), microcontrollers, etc. In various examples, the processing circuitry can include accelerator circuitry (e.g., circuitry for accelerating the training of machine learning models) or GPGPU (general-purpose graphics processing unit) circuitry.

[0113] In at least some embodiments, one or more storage devices 46 may include at least one element from the group of computer-readable storage media such as magnetic or optical storage media, such as hard disk drives, flash memory, floppy disks, random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electronically erasable programmable read-only memory (EEPROM), or network storage.

[0114] The aspects and features described in a particular example of the foregoing examples may also be combined with one or more aspects and features of another example to replace the same or similar features of that other example, or to additionally introduce those features into that other example.

[0115] Examples may also be or relate to (computer) programs including program code that perform one or more of the methods described above when executed on a computer, processor, or other programmable hardware component. Therefore, the steps, operations, or processes of the different methods described above may also be performed by a programmed computer, processor, or other programmable hardware component. Examples may also cover program storage devices (e.g., digital data storage media) that are machine, processor, or computer readable and that encode and / or contain machine-executable, processor-executable, or computer-executable programs and instructions. Program storage devices may include, for example, digital storage devices, magnetic storage media such as disks and tapes, hard disk drives, or optically readable digital data storage media. Other examples may include systems programmed to perform the steps of the methods described above, such as computers, processors, control units, (field-programmable arrays) ((F)PLAs), (field-programmable gate arrays) ((F)PGAs), graphics processing units (GPUs), application-specific integrated circuits (ASICs), integrated circuits (ICs), or system-on-a-chip (SoCs).

[0116] It should also be understood that, unless explicitly stated in individual cases or necessary for technical reasons, the disclosure of several steps, processes, operations, or functions in the specification or claims should not be construed as implying that these operations must depend on the described order. Therefore, the foregoing description does not limit the execution of several steps or functions to a particular order. Furthermore, in other examples, a single step, function, process, or operation may include and / or may be decomposed into several sub-steps, sub-functions, sub-processes, or sub-operations.

[0117] If aspects of a device or system have already been described, these aspects should also be understood as descriptions of the corresponding method. For example, functional aspects of a block, device, or device or system may correspond to characteristics of the corresponding method (e.g., method steps). Therefore, aspects describing a method should also be understood as descriptions of the attributes or functional characteristics of the corresponding block, element, device, or system.

[0118] The following claims are incorporated herein by reference in the detailed description, wherein each claim may be taken as an independent example. It should also be noted that while dependent claims in the claims relate to a particular combination with one or more other claims, other examples may also include combinations of dependent claims with the subject matter of any other dependent or independent claim. Such combinations are explicitly stated herein unless otherwise stated in individual cases that a particular combination is not intended. Furthermore, even if a claim is not directly defined as dependent on any other independent claim, its features should be included with respect to that other independent claim.

Claims

1. An apparatus (20) for re-identification, the apparatus comprising a processing circuit (24) configured to: Media data is obtained via interface (22); A re-identification code representing at least a portion of the media data is generated using a hash algorithm, wherein, The re-identification code represents a person, animal, or object, and wherein the re-identification code is adapted to re-identify the person, animal, or object represented by the re-identification code by comparing the re-identification code generated based on the media data with another re-identification code generated based on other media data using a similarity metric; The re-identification code is transformed using the transformation function to obtain the transformed re-identification code. The transformation function is configured to transform the re-identification code such that if the re-identification code, based on the similarity metric, is similar to another re-identification code generated by the hash algorithm, then the transformed re-identification code is similar to another transformed re-identification code, which is a transformed version of the other re-identification code. The transformation function is configured to transform the re-identification code based on transformation parameters, which depend on time and / or location; and Provide the transformed re-identification code.

2. The apparatus according to claim 1, wherein, The transformation parameters are time-dependent, and the processing circuitry is configured to adapt the transformation parameters according to a predefined time schedule.

3. The apparatus according to claim 2, wherein, The processing circuit is configured to delete previously used transformation parameters after adapting the transformation parameters.

4. The apparatus according to claim 2 or 3, wherein, The processing circuit is configured to generate two transformation parameters for two time points, and to gradually adapt the transformation parameters between the two time points based on linear interpolation between the two transformation parameters.

5. The apparatus according to any one of claims 1 to 4, wherein, The transformation parameters are derived from the cryptographic secret.

6. The apparatus according to any one of claims 1 to 5, wherein, The transformation function is configured to perform a nonlinear transformation of the re-identification code.

7. The apparatus according to claim 6, wherein, The transformation function is configured to perform the nonlinear transformation using a machine learning model.

8. The apparatus according to any one of claims 1 to 7, wherein, The media data is one of the following: image data, video data, audio data, three-dimensional representation of object motion, and text-based media data.

9. The apparatus according to any one of claims 1 to 8, wherein, The processing circuitry is configured to acquire the media data from the camera's imaging sensor, the media data being one of image data and video data. Alternatively, the processing circuitry may be configured to obtain the media data from one or more media data generation devices via a network.

10. The apparatus according to claim 9, wherein, The processing circuit is configured to obtain the media data from two or more media data generating devices located at different locations, wherein the processing circuit is configured to perform the transformation using different transformation parameters for the two or more media data generating devices located at different locations.

11. The apparatus according to claim 10, wherein, The processing circuit is configured to obtain media data from first, second, and third media data generating devices located at different locations, wherein the second media data generating device is located between the first media data generating device and the third media data generating device, and wherein the processing circuit is configured to generate the transformation parameters for the media data obtained from the second media data generating device based on linear interpolation between transformation parameters for the media data obtained from the first media data generating device and the third media data generating device.

12. A camera device (200) comprising an imaging sensor (28) and a device (20) according to any one of claims 1 to 11.

13. A system (300, 310) for re-identification, comprising two or more means (20) according to any one of claims 1 to 11.

14. The system according to claim 13, wherein, The transformation parameters are time-dependent, wherein the two or more devices are configured to use the same transformation parameters at the same time. Alternatively, the transformation parameters may be location-dependent, wherein the two or more devices are configured to process media data originating from two or more locations and to use different transformation parameters for the media data originating from the two or more locations.

15. A method for training a machine learning model, the method comprising: Obtain training data (410) for training the machine learning model, the training data including at least a plurality of re-identification codes; The machine learning model is trained (420) using the training data to non-linearly transform the plurality of re-identification codes into a plurality of transformed re-identification codes, such that if a re-identification code is similar to another re-identification code according to a similarity metric, then the transformed re-identification code is similar to another transformed re-identification code that is a transformed version of the other re-identification code. The re-identification code represents a person, animal, or object originally represented in at least a portion of the media data, wherein the re-identification code is suitable for re-identifying the person, animal, or object represented by the re-identification code by comparing the re-identification code generated based on the media data with another re-identification code generated based on other media data using a similarity metric.