{"action":"created","issue":{"url":"https://api.github.com/repos/biometrics/janus/issues/28","repository_url":"https://api.github.com/repos/biometrics/janus","labels_url":"https://api.github.com/repos/biometrics/janus/issues/28/labels{/name}","comments_url":"https://api.github.com/repos/biometrics/janus/issues/28/comments","events_url":"https://api.github.com/repos/biometrics/janus/issues/28/events","html_url":"https://github.com/biometrics/janus/issues/28","id":150607893,"number":28,"title":"janus_template_role question","user":{"login":"stephenrawls","id":10453511,"avatar_url":"https://avatars.githubusercontent.com/u/10453511?v=3","gravatar_id":"","url":"https://api.github.com/users/stephenrawls","html_url":"https://github.com/stephenrawls","followers_url":"https://api.github.com/users/stephenrawls/followers","following_url":"https://api.github.com/users/stephenrawls/following{/other_user}","gists_url":"https://api.github.com/users/stephenrawls/gists{/gist_id}","starred_url":"https://api.github.com/users/stephenrawls/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stephenrawls/subscriptions","organizations_url":"https://api.github.com/users/stephenrawls/orgs","repos_url":"https://api.github.com/users/stephenrawls/repos","events_url":"https://api.github.com/users/stephenrawls/events{/privacy}","received_events_url":"https://api.github.com/users/stephenrawls/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2016-04-23T23:46:56Z","updated_at":"2016-04-25T17:47:47Z","closed_at":null,"body":"Hi,\r\n\r\nI have a question about the intended use of `janus_template_role`.\r\n\r\nFirst, I am repeating all the possible values of this enumeration:\r\n`ENROLLMENT_11, VERIFICATION_11, ENROLLMENT_1N, IDENTIFICATION, CLUSTERING`\r\n\r\n1) I assume I know what VERIFICATION_11 and ENROLLMENT_1N mean (in the first case, the template will be used for the one-to-one verification protocol; in the second case, the template will be used for the one-to-n search protocol, and it is being enrolled to the gallery).  I am guessing that IDENTIFICATION means that the template will be used in the one-to-n search protocol and will be used as a probe? I am unsure what ENROLLMENT_11 would mean. Can you confirm my previous descriptions, and also explain ENROLLMENT_11?\r\n\r\n2) Does the presence of these enrollment types mean that we can assume the test harness will call `create_template()` separately for the identification protocol and the verification protocol for templates that happen to be included in both protocols? If not, it is unclear what these `template_role` hints can be used for, if there is no guarantee that the test harness will pass them to us. If so, it seems that the test harness would be repeating work unnecessarily unless an implementation actually made use of these hints.\r\n\r\n3) The presence of this comment in the `janus_create_template()` function seems to indicate that we are prohibited from actually making use of these hints.  (I'm unsure what use we would make out of them, I'm just trying to understand their purpose in the API)\r\n\r\n> All media necessary to build a complete template will be passed in at\r\n>  one time and the constructed template is expected to be suitable for\r\n>  verification and search.\r\n\r\nIf all templates we create are supposed to be suitable for both verification and search (which seems reasonable to me, by the way), that seems to imply that we aren't allowed to create different templates depending on the value of `janus_template_role`.\r\n\r\nCan you explain the intended use of `janus_template_role`?\r\n\r\nThanks,\r\nStephen Rawls (ISI)\r\n"},"comment":{"url":"https://api.github.com/repos/biometrics/janus/issues/comments/214457832","html_url":"https://github.com/biometrics/janus/issues/28#issuecomment-214457832","issue_url":"https://api.github.com/repos/biometrics/janus/issues/28","id":214457832,"user":{"login":"paddygr","id":15438517,"avatar_url":"https://avatars.githubusercontent.com/u/15438517?v=3","gravatar_id":"","url":"https://api.github.com/users/paddygr","html_url":"https://github.com/paddygr","followers_url":"https://api.github.com/users/paddygr/followers","following_url":"https://api.github.com/users/paddygr/following{/other_user}","gists_url":"https://api.github.com/users/paddygr/gists{/gist_id}","starred_url":"https://api.github.com/users/paddygr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paddygr/subscriptions","organizations_url":"https://api.github.com/users/paddygr/orgs","repos_url":"https://api.github.com/users/paddygr/repos","events_url":"https://api.github.com/users/paddygr/events{/privacy}","received_events_url":"https://api.github.com/users/paddygr/received_events","type":"User","site_admin":false},"created_at":"2016-04-25T17:47:47Z","updated_at":"2016-04-25T17:47:47Z","body":"Stephen,\r\n\r\nI'd advocate to: a) drop the requirement that the similarity score be symmetric (they're sometimes not); and b) allow the algorithm to throw an error if anything other than (enrol_template, verif_template) is passed to janus_verify i.e. order and semantics are fixed.  \r\n\r\nBest,\r\nPatrick"}}