Eindrapport beeldmerkherkenning

  • 440 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
440
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
5
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Technical Sciences Brassersplein 2 2612 CT Delft Postbus 5050 2600 GB Delft www.tno.nl T +31 88 866 70 00 F +31 88 866 70 57 infodesk@tno.nl TNO-rapport Beeldmerktechnologie naar de Praktijk Drie concrete internetdiensten uitgewerkt voor het OOV domein aan de hand van het STOF model Datum 16 december 2012 Auteur(s) xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxx Reviewers xxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx Aantal pagina's 55 (incl. bijlagen) Aantal bijlagen - Opdrachtgever xxxxxxxxxxxxxxxxxxx Projectnaam Beeldmerken Projectnummer 053.01504 Alle rechten voorbehouden. Niets uit deze uitgave mag worden vermenigvuldigd en/of openbaar gemaakt door middel van druk, foto-kopie, microfilm of op welke andere wijze dan ook, zonder voorafgaande toestemming van TNO. Indien dit rapport in opdracht werd uitgebracht, wordt voor de rechten en verplichtingen van opdrachtgever en opdrachtnemer verwezen naar de Algemene Voorwaarden voor opdrachten aan TNO, dan wel de betreffende terzake tussen de partijen gesloten overeenkomst. Het ter inzage geven van het TNO-rapport aan direct belang-hebbenden is toegestaan. © 2012 TNO
  • 2. TNO-rapport | 2 / 55 Inhoudsopgave Managementsamenvatting...................................................................................................... 3 1 Introductie ................................................................................................................ 4 2 Achtergrond ............................................................................................................. 5 2.1 STOF model .............................................................................................................. 5 2.2 Diensten: Zoeken, Signaleren of Trends spotten ...................................................... 6 2.3 Technologie: Fingerprinting, Conceptherkenning of Beeldmerktechnologie............. 7 2.4 Organisatie van dienstverlening ................................................................................ 9 2.5 Financiële aspecten................................................................................................. 11 2.6 Conclusies ............................................................................................................... 12 3 Locatieherkenning op Twitter .............................................................................. 14 3.1 Service..................................................................................................................... 14 3.2 Technologie ............................................................................................................. 18 3.3 Organisatie .............................................................................................................. 27 3.4 Financiën ................................................................................................................. 29 3.5 Conclusies ............................................................................................................... 30 4 YouTube Scannen ................................................................................................. 31 4.1 Service..................................................................................................................... 31 4.2 Technologie ............................................................................................................. 34 4.3 Organisatie .............................................................................................................. 40 4.4 Financiën ................................................................................................................. 42 4.5 Conclusies ............................................................................................................... 43 5 Trends spotten op Internet ................................................................................... 44 5.1 Service..................................................................................................................... 44 5.2 Technologie ............................................................................................................. 45 5.3 Organisatie .............................................................................................................. 50 5.4 Financiën ................................................................................................................. 51 5.5 Conclusies ............................................................................................................... 52 6 Conclusies en Aanbevelingen.............................................................................. 53 7 Programma "Beeldtechnologie naar de Praktijk" .............................................. 55
  • 3. TNO-rapport | 3 / 55 Managementsamenvatting Dit rapport presenteert de bevindingen vanuit het project Beeldmerken dat is uitgevoerd binnen het programma Herkenning Digitale Informatie en Fingerprinting (HDIeF) van de NCTV. De doelstelling van dit onderzoeksprogramma is het stimuleren van bestaande en nieuwe initiatieven om deze technieken te helpen verbeteren opdat ze beter toepasbaar worden binnen de openbare orde en veiligheidssector (OOV). Dit rapport richt zich op het bruikbaar maken van beeldmateriaal dat beschikbaar is in open bronnen op het internet en haar sociale netwerken (OSINT). Er zijn relatief weinig tools beschikbaar om dit materiaal te verwerken, terwijl de potentie hoog is. Er zijn drie cases uitgewerkt: locatie herkennen in Twitter foto's, YouTube scannen en trends spotten in internetbeelden. Deze cases zijn uitgewerkt aan de hand van het STOF model, dat stelt dat Service, Technologie, Organisatie en Financiën haalbaar en op orde moeten zijn om een succesvolle ICT dienst te realiseren. De inventarisatie laat zien dat het automatisch verwerken van internetbeelden door middel van een nationale aanpak goed te realiseren is. Het verwerken van beeldmateriaal brengt bewust of onbewust privacy risico’s met zich mee. De privacy, juridische en forensische aspecten worden in dit rapport niet expliciet benoemd. Deze inventarisatie is voornamelijk gericht op het inzichtelijk maken van het proces om een deze ICT diensten te realiseren. Indien er vervolg wordt gegeven aan deze ontwikkeling, dan zal aandacht besteed moeten worden op welke wijze privacy in het ontwerp van deze ICT diensten meegenomen moet worden.
  • 4. TNO-rapport | 4 / 55 1 Introductie Betrouwbaar en veilig internet is essentieel voor een veilige maatschappij. Het internet fungeert als ruggengraat voor vitale infrastructuren als telecom en financiële markten. Ook speelt een groeiend deel van het sociale leven zich af op het internet . Internet groeit en is multimediaal. De audio-, video- en tekstdocumenten die beschikbaar zijn, bevatten relevante data voor veiligheidsdiensten. De nadruk bij opsporingsmethodieken op internet ligt op tekstanalyse, voornamelijk omdat tekst makkelijker te verwerken is. Beeldmateriaal is in de context van opsporing en handhaving interessant, vanwege de gedetailleerde en overtuigende inzichten die foto’s en video’s op kunnen leveren. Vanwege een gebrek aan goede ICT diensten is het grootste deel van online beeldmateriaal niet bruikbaar voor veiligheidsdoeleinden. Handmatig verwerken van beeldmateriaal is tijdintensief en dus erg duur, terwijl het automatisch verwerken van beeld- en videomateriaal uitermate complex is. Dit blijkt uit verschillende initiatieven en onderzoeken met relevante inzichten, maar relatief weinig bruikbare tooling. Gegeven de potentie van beeldmateriaal op het internet is dus de vraag: Welke aanpak moet gekozen worden om praktisch bruikbare diensten te realiseren die automatisch beeldmateriaal verwerken? Deze vraag wordt beantwoord voor drie concrete ICT diensten aan de hand van het STOF (service, technologie, organisatie, financiën) model:  Locatieherkenning op Twitter (hoofdstuk 3),  YouTube Scannen (hoofdstuk 4),  Trends Spotten op Internet (hoofdstuk 5). Figuur 1. Dit rapport onderzoekt drie beeld gebaseerde diensten, die zijn gebaseerd op Twitter, YouTube en Internet. Het resultaat: de complexiteit van beeldtechnologie in de praktijk wordt inzichtelijk. Voor de cases zijn de investeringskosten, de operationele kosten de organisatorische verbanden met de technologische ontwikkelingen in kaart gebracht. De cases zijn erop gericht online beeldmateriaal in te zetten voor het uitvoeren van de taken van veiligheidsdiensten.
  • 5. TNO-rapport | 5 / 55 2 Achtergrond Beeldmateriaal vervult vaak een sleutelrol in de veiligheidsketen. Alle mobiele camera’s tezamen bieden in combinatie met sociale media feitelijk een groeiend ad- hoc camera netwerk. Dit gegeven maakt de potentie alleen maar groter. Beeldmateriaal kan bijvoorbeeld verschillende informatie bronnen met elkaar in verband brengen, waardoor een compleet beeld kan ontstaan ten behoeve van waarheidsvinding, opsporing, fenomeenanalyse of vroeg-signalering. Beeld- en videomateriaal van het internet blijkt lastig te gebruiken. Dit materiaal is ongelijkvormig, ongesorteerd en onbetrouwbaar. Ondanks de mogelijkheden en deze technologische belofte blijkt het buitengewoon lastig om bruikbare diensten te ontwikkelen. Er zijn voldoende voorbeelden beschikbaar waar de verwachtingen achteraf te hoog gespannen bleken. Als we het gebruik van beeldtechnologie plotten op Gartner’s hype cycle 1 dan is de vallei van desillusie net gepasseerd en zijn we op weg naar productie niveau, zoals Figuur 1 laat zien. De analyse van drie ICT diensten, die in dit rapport worden gepresenteerd, wordt een aanpak afgeleid om dit niveau van volwassenheid te bereiken. Figuur 2. Het gebruik van beeldtechnologie voor cyber security kan op Garnter’s hype cycle gepositioneerd worden net voorbij de desillusie. 2.1 STOF model Verschillende stakeholders geven aan de technische potentie niet te betwijfelen, maar hebben vooral vragen over het praktisch bruikbaar maken van beeldtechnologie. Bijvoorbeeld als ik YouTube wil monitoren, kan dat? Deze feedback is aanleiding geweest om te onderzoeken wat nodig is om de technologie bruikbaar te maken. Hiervoor is het STOF model 2 gebruikt. Dit model stelt dat de vier domeinen op orde moeten zijn wil een dienst succesvol kunnen worden. Dit model is als volgt gedefinieerd:  Service domein: betreft de dienstverlening, de toegevoegde waarde van de dienstverlening voor het veiligheidsnetwerk. 1 http://www.gartner.com/technology/research/methodologies/hype-cycle.jsp 2 Creating Successful ICT-Services: Practical guidelines based on the STOF method; Edward Faber and Henny De Vos (Eds.). Praktische bruikbaarheid van beeldtechnologie voor veiligheidsketen
  • 6. TNO-rapport | 6 / 55  Technologie domein: betreft de technische functionaliteit die nodig is om de dienstverlening te realiseren.  Organisatie domein: betreft de structuur van het netwerk, dat nodig is om de dienst te creëren en de dienstverlening te verzorgen.  Financieel domein: betreft de manier waarop risico, investeringen en opbrengsten worden verdeeld over de verschillende actoren in het veiligheidsnetwerk. 2.2 Diensten: Zoeken, Signaleren of Trends spotten Een goede ICT dienst helpt een gebruiker bij een bepaalde taak met behulp van techniek en voegt op die manier waarde toe. Het is belangrijk om onderscheid te maken, tussen technologie en dienst, want een techniek op zichzelf is niet op grote(re) schaal toepasbaar. De verschillende factoren uit het STOF model worden uitgewerkt om de dienst vorm te geven. Er bestaan bekende diensten die beeldmateriaal automatisch verwerken. Voor biometrische toepassingen zoals vingerafdrukken, herkennen van gezichten of het herkennen van tekst in beeldmateriaal (OCR) zijn al langere tijd oplossingen beschikbaar. Eigenschappen van deze toepassingen zijn:  lange onderzoekgeschiedenis; Technologie om vingerafdrukken te matchen gaat terug tot de jaren 60.  model gebaseerd; Gezichtsherkenning maakt gebruik van specifieke kenmerken van het gezicht, zoals twee ogen, daaronder een neus met twee neusgaten en daaronder de mond.  één technologie ontwikkeld voor specifiek beeldmateriaal; OCR technologie is ontwikkeld voor de analyse van gescande documenten met machinaal geproduceerde teksten, en niet voor het herkennen van bijvoorbeeld plaatsnamen in een foto. Om de toepassingen overzichtelijk te houden worden drie type diensten onderscheden: zoeken, signalering en trendspotting. Tabel 1 toont de verschillende eigenschappen van ieder type dienst. Tabel 1. Drie onderscheidende diensten die ieder andere eisen opleggen aan de technologie. Dienst Zoeken (hoofdstuk 3) Signaleren (hoofdstuk 4) Trends spotten (hoofdstuk 5) Rol van de gebruiker Relevante afbeelding aanbieden Vooraf de observatie definiëren Relevantie van gevonden trends toetsen Bekende diensten Google Images, TinEye Google Alert Trending topics op Twitter, Google Trends Voorbeeld vragen Waar is deze foto geschoten? Is dit inderdaad Schiphol? Waar is dit object nog meer te zien? Als een foto over XYZ gepubliceerd wordt laat het weten! Welke logo’s of objecten waren de afgelopen week relevant?
  • 7. TNO-rapport | 7 / 55 2.3 Technologie: Fingerprinting, Conceptherkenning of Beeldmerktechnologie Om de verschillende beeldtechnologieën overzichtelijk te maken onderscheiden we drie typen. Tabel 2 presenteert een overzicht van deze technologieën. Deze technologieën zullen in het vervolg van deze sectie verder toegelicht worden. Tabel 2. Drie basistechnologieën om beeldmateriaal automatisch te verwerken Technologie Fingerprinting Concept- herkenning Beeldmerk- technologie Wat doet het? Identificatie bekend beeldmateriaal; Identieke beelden herkennen met enige verstoring; Herkenning van een concept, waarin de nodige variatie bestaat. Bijvoorbeeld “boot” of “vlag” Specifieke objecten of beeldmerken herkennen of identificeren in een afbeelding Voordeel Weinig training- voorbeelden nodig, snel met hoge precisie. Snelle test Weinig trainings- voorbeelden nodig Nadeel Maakt statistisch gebruik beeldinhoud. Geen semantische interpretatie. Veel trainings- voorbeelden, precisie hangt sterk af van het concept. Complexe technologie en in combinatie met geometrische test zeer rekenintensief. Gerelateerde technieken Watermarking, Hashing, PRNU Anomalie detectie, beeld clustering Instance search, logoherkenning, object herkenning, image-based search, Gezichtherkenning, OCR Leveranciers / aanbieders CIvolution, iPharro Audible Magic, ZiuZ EUvision OpenCV OpenCV Magellan ERSP 2.3.1 Fingerprinting CIvolution 3 introduceert "digital fingerprinting" als volgt: "Digital fingerprinting analyses the unique features of an audio or video asset and compares them against ‘reference’ fingerprints stored in a database. One of the key characteristics of fingerprinting is that it does not modify the content. Similar to a human fingerprint that uniquely identifies a human being, a digital fingerprint uniquely identifies a piece of video/audio content. The analogy can be extended to the process of fingerprint matching: first, known fingerprints (‘reference’ fingerprints) must be stored in a database; then, a ‘candidate’s’ fingerprint is queried against the fingerprint database for a match. Sometimes fingerprinting technology is referred to as robust video hashing. Conventional cryptographic 3 http://www.civolution.com/technology/digital-fingerprinting/
  • 8. TNO-rapport | 8 / 55 hashing (e.g. MD5) is fragile; an error in a single bit is sufficient for the hash to completely change. These fragile hashing technologies are not considered to be content-based identification technologies since they do not consider the content, understood as information, just the bits." Figuur 3. Schematische uitleg hoe fingerprinting gebruikt wordt door CIvolution4 2.3.2 Conceptherkenning EUvision Technologies 5 legt de essentie van conceptherkenning als volgt uit: "In short, the technology can be trained to recognize anything, for instance cars. This is realized by providing hundreds or thousands of examples of pictures of cars. The software then generalizes over what it ‘sees’. It will then recognize a car whether it is in shadow or not, whether the sky is blue or cloudy, or whether the image is recorded from the left or from the right, whether the car is blue or red or black, or whether it is an old timer or brand new model. Therefore, this technology allows for understanding the ‘essence’ or ‘concept’ of an image, similar to the human brain." 2.3.3 Beeldmerktechnologie De essentie van beeldmerktechnologie is het vinden van corresponderende beeldkenmerken in minimaal twee afbeeldingen. Er zijn verschillende definities voor deze beeldkenmerken, vaak wordt hiervoor SIFT 6 of SURF 7 kenmerken gebruikt. De SURF aanpak wordt door Bay als volgt uitgelegd: 4 http://www.civolution.com/technology/digital-fingerprinting/ 5 http://www.euvt.eu/concept-detection/ 6 D. G. Lowe, "Object recognition from local scale-invariant features". Proceedings of the International Conference on Computer Vision, 1999. 2. pp. 1150–1157. 7 H. Bay, T. Tuytelaars, and L. V. Gool, "SURF: Speeded up robust features," in Proc. of ECCV’06. Graz, Austria: Springer-Verlag, May 2006, pp. 404–417.
  • 9. TNO-rapport | 9 / 55 "The task of finding correspondences between two images of the same scene or object is part of many computer vision applications. Camera calibration, 3D reconstruction, image registration, and object recognition are just a few. The search for discrete image correspondences can be divided into three main steps. First, ‘interest points’ are selected at distinctive locations in the image, such as corners, blobs, and T-junctions. The most valuable property of an interest point detector is its repeatability, i.e. whether it reliably finds the same interest points under different viewing conditions. Next, the neighbourhood of every interest point is represented by a feature vector. This descriptor has to be distinctive and, at the same time, robust to noise, detection errors, and geometric and photometric deformations. Finally, the descriptor vectors are matched between different images. The matching is often based on a distance between the vectors, e.g. the Mahalanobis or Euclidean distance. The dimension of the descriptor has a direct impact on the time this takes, and a lower number of dimensions is therefore desirable." Figuur 27 presenteert een voorbeeld: Magellan 8 beeldmerktechnologie wordt gebruikt om een Samsung logo te herkennen in een sportvideo. Dit logo is gevonden op basis van typische beeldkenmerken die contrast en vormen van een Samsung logo karakteriseert. De technologie wordt onder andere gebruikt voor het meten van merk exposure. Figuur 4. Voorbeeld hoe beeldmerktechnologie gebruikt kan worden, waarbij de sponsor Samsung is herkend. 2.4 Organisatie van dienstverlening Voor de verwerking van beeldmateriaal zijn verschillende organisatiemodellen mogelijk. Voor de levering van een informatie gedreven dienst zijn twee componenten essentieel: technologie en data. Technologie moet helpen om een zoekvraag van een gebruiker op te lossen, waarbij veelal een referentiedatabase 8 http://www.omniperception.com/products/magellan-brand-exposure-analysis/
  • 10. TNO-rapport | 10 / 55 (data) nodig is om matches te vinden. De vraag is: Wie beheert de technologie en de data en levert de dienst? Grofweg kan een tweedeling worden gemaakt, zoals Figuur 5 illustreert: 1. Zoekvraag naar de technologie, of 2. Technologie naar de zoekvraag. Figuur 5. Centraal probleem voor dienstverlening voor de veiligheidsketen: zoekvraag naar de technologie of de technologie naar de zoekvraag? Voor beide organisatiemodellen zijn er partijen beschikbaar die oplossingen kunnen leveren. Tabel 3 presenteert een aantal voorbeelden met zijn voor- en nadelen. Tabel 3. Kenmerken van de twee organisatiemodellen Organisatie- modellen Zoekvraag naar de technologie (Cloud oplossingen) Technologie naar de zoekvraag (Proprietary oplossingen) Leveranciers  Google  TinEye  Magellan  ERSP  EUvision  Autonomy  OpenCV (Open source technologie) Voordelen  Lage kosten (vaak gratis) omdat de dienstlevering centraal georganiseerd is door een derde partij  Invloed op de database  Optimale invloed op fine-tuning  Open source technologie wordt steeds beter Nadelen  Geen invloed op de referentiedatabase of bronnen  Vertrouwelijke zoekvragen komen terecht bij derden  Fair use policy  Complexe technologie  Hoge investeringskosten Omdat zoekvragen vaak vertrouwelijk zijn, mogen die niet bij derde partijen terecht komen. Uiteindelijk is het ongewenst om door Google geprofileerd te worden tijdens een onderzoek. Om die reden zal de dienstverlening bij de overheid moeten komen te liggen. Om vervolgens de kosten en de complexiteit beheersbaar te houden is het verstandig een centrale faciliteit in te richten. Het is natuurlijk ook mogelijk een bestaande faciliteit verder uit te bouwen. Dit resulteert in een ISP (internet service Zoekvraag bij uitvoerende dienst Technologie en data in de Cloud / Internet Probleem: zoekvraag vertrouwelijk Probleem: technologie en data duur ?
  • 11. TNO-rapport | 11 / 55 provider) voor de overheid, zoals het iRN 9 . De onderzochte diensten passen ook in haar portfolio. Voordeel van het iRN is dat er al een groot aantal gebruikers actief zijn. De dienstverlenging kan vervolgens bij verschillende overheden beschikbaar komen vanuit een bestaande beheerorganisatie. Op basis van deze overwegingen gaat dit rapport uit van dienstverlening door een centrale beheerorganisatie. Uiteindelijk zullen de verschillende gebruikers vragen om combinaties van technologieën. Het vraagt dus om specifieke kennis om dergelijk combinaties te kunnen ontwerpen. Deze observatie kan leiden tot een meer flexibele opzet van een dienstenplatform dat meer als te configureren blokkendoos acteert, dan als vast stuk software. 2.4.1 Samenwerking Geen van de drie diensten staat op zichzelf, maar komt tot stand door middel van samenwerking tussen verschillende partijen die data, technologie, software ontwikkeling, kennis en beheer inbrengen. Per onderzochte dienst wordt binnen de sectie “organisatie” uitgewerkt welke rollen nodig zijn voor de realisatie en levering van de dienst. In een later stadium kunnen concrete partijen toegekend worden aan deze rol. 2.4.2 Infrastructuur Voor de levering van de uitgewerkte diensten moet een infrastructuur worden ingericht. Per dienst wordt een inschatting gemaakt van een realistische infrastructuur. Deze wordt inzichtelijk gemaakt op basis van drie indicatoren:  Rekenkracht in aantal cores,  Opslag in terabytes,  Bandbreedte in Mbps. 2.5 Financiële aspecten De waarde van een dienst wordt in het algemeen berekend met een kosten-baten analyse. De baten van de dienst zijn in dit geval lastig te kwantificeren, omdat de service bestemd is voor alle overheidsdiensten en dus verschillende toepassingen betreft met ieder hun eigen waarde. Derhalve concentreren wij ons op de investeringskosten en de operationele kosten. Uitgangspunt is investeren in een programma of projecten waarbij gewerkt wordt aan open en licentievrije technologieën. Enerzijds omdat de beheerorganisatie verschillende diensten zal leveren, waarbij de kracht zit in de bundeling van diensten. De gebruikte technologieën moeten dus open zijn voor integratie of informatie-uitwisseling. Een aanvullend voordeel is dat een verdienmodel zonder licenties eenvoudiger is. Om deze reden heeft open source software bijzondere aandacht. Voor beeldtechnologie is OpenCV 10 de belangrijkste oplossing, waar de actieve community 11 onder aanvoering van commerciele partijen als Intel en Willow Garage een goed pakket wordt aangeboden. 9 http://www.columbo.nl/ 10 http://opencv.org/ 11 http://opencv.willowgarage.com/wiki/
  • 12. TNO-rapport | 12 / 55 De operationele kosten worden inzichtelijk gemaakt aan de hand van de drie infrastructuur indicatoren: rekenkracht, opslag, bandbreedte en daarbovenop kosten voor beheer. De maandelijkse operationele kosten worden als volgt gekwantificeerd:  Rekenkracht: 1 core kost ongeveer 20€ per maand (Gevirtualiseerd 12 of eigen hardware is vergelijkbaar: bv. DELL 13 server € 4500, 6 cores, afschrijving in 5 jaar)  Opslag: 1 TB 10€ per maand (€ 100 per schijf, plus infrastructuur, afschrijving 2 jaar)  Bandbreedte: 1Mbps € 2 per maand  Beheer: € 5000 per FTE per maand 2.6 Conclusies 2.6.1 Uitdaging Beeld verwerkende diensten zijn niet nieuw, maar doorgaans gespecialiseerd op sterk afgebakende terreinen. Doordat de data waar dit project zich op richt afkomstig is van het internet, wordt deze data gekenmerkt door:  Grote hoeveelheden multimodaal materiaal (tekst, beeld, video),  Een groot aantal verschillende formaten en standaarden,  Ongecontroleerd productieproces, verschillende camera’s,  Verschillende bronnen (Facebook, Twitter, YouTube, en vele andere bronnen als fora). Uiteindelijk zullen de verschillende diensten vragen om combinaties van technologieën, wat een meer flexibele inrichting van het dienstenplatform vereist. 2.6.2 Toegevoegde waarde Bij technologie die in het verlengde ligt van de huidige manier van werken, is het relatief makkelijk om de toegevoegde waarde vast te stellen. Voor veel technieken zijn efficiëncy en effectiviteit uitwisselbaar, want door het gebruik van slimme filters (See more, read less) kan men dezelfde resultaten boeken in minder tijd, of andersom: betere resultaten boeken in dezelfde tijd. Als er functies beschikbaar komen, die voorheen (bijna) onmogelijk waren, dan het is lastig in te schatten wat dergelijke diensten opleveren. Dit geldt voor de diensten die onderzocht zijn in dit rapport, want op dit moment: 1. Worden foto’s niet automatisch gekoppeld aan locaties. 2. Wordt YouTube niet actief gescand, dus worden relevante video’s alleen opgemerkt bij toeval door de diensten, de media of door actieve burgers. 3. Worden er geen trends gemonitord in beeldmateriaal op internet, dus is niet vroegtijdig bekend welke beeldmerken veel aandacht krijgen. Tenslotte is het belangrijk de toegevoegde waarde van technologie duidelijk te maken. Het is een gegeven dat mensen intelligenter zijn, dan automatische technieken. Daarentegen kan technologie veel grotere hoeveelheden data 12 https://www.cloudvps.nl/configurator/ 13 http://www.dell.nl/
  • 13. TNO-rapport | 13 / 55 verwerken en onthouden dan mensen. Bij de ontwikkeling van de diensten is het dus de uitdaging om de technologie en eindgebruikers zo optimaal mogelijk te laten samenwerken: human-in-the-loop.
  • 14. TNO-rapport | 14 / 55 3 Locatieherkenning op Twitter De toename van het gebruik van smart phones is één van de drijvende krachten achter het gebruik van sociale media, zoals Twitter. Naast de korte tekstberichten worden dagelijks vele foto’s verstuurd. Wanneer een incident plaatsvindt staan de foto’s vaak eerder online, dan dat de hulpdiensten ter plaatse zijn (Figuur 6). Dit beeldmateriaal is waardevol voor verschillende doeleinden, zoals opsporing en waarheidsvinding. Voor het duiden van een foto is het essentieel om de locatie waar de foto is genomen te kennen. Dit hoofdstuk beschrijft hoe beeldmerktechnologie kan worden ingezet om de locatie van een foto te achterhalen. Figuur 6. Grafische weergave van het ad hoc camera netwerk (verschillende gebruikers die dezelfde gebeurtenis vastleggen, zonder dit vooraf gepland te hebben) dat ontstaat naar aanleiding van een incident. Dit materiaal wordt gepubliceerd door verschillende fotodiensten zoals Instagram, Twitpic, Yfrog, en vele anderen. Figuur 7 presenteert een overzicht van de meest gelinkte sites vanaf Twitter, waarbij fotodienst Instagram duidelijk de grootste is. Bijna 1% van de tweets die zijn verstuurd in juni 2012 bevatte een link naar deze fotodienst. 3.1 Service Wanneer er iets relevants gebeurt is de eerste reactie van veel mensen om dit vast te leggen met de camera van een mobiele telefoon en dit vervolgens te delen. Eén foto zegt soms niet zoveel, maar een aantal relevante foto’s bij elkaar geeft een completer beeld van de situatie (Figuur 8). Hierdoor is sneller vast te stellen wat en waar iets is gebeurd. Daarnaast biedt het beeldmateriaal de mogelijkheid om te achterhalen hoe een situatie verandert naarmate de tijd vordert.
  • 15. TNO-rapport | 15 / 55 Figuur 7. Overzicht met de meest gelinkte websites vanaf Twitter14 , fotodienst Instagram is duidelijk de grootste. Mogelijk neemt het marktaandeel van Instagram sterk af omdat Twitter de API voor Instagram heeft dichtgezet15 . Dit hoofdstuk richt zich op de dienst “zoeken” van de locatie wáár een foto genomen is. Er zijn zaken opgelost op basis van foto’s die via Twitter zijn gepubliceerd. Bijvoorbeeld door het vinden van getuigen op Schiphol op het moment van een bommelding. Of mensen met de intentie om te rellen die tegelijkertijd een foto publiceerde. In beide gevallen werd de locatie van de fototoevallig herkend door een analist. Dit zal helaas niet altijd lukken. Figuur 8. Schematische weergave van het proces om meer relevante foto’s te vinden. 14 http://twittermania.nl/2012/07/instagram-meest-gelinkte-site-op-twitter/ 15 http://www.nu.nl/internet/2949618/twitter-gaat-strijd-met-instagram.html
  • 16. TNO-rapport | 16 / 55 Er zijn een aantal voor de hand liggende aanknopingspunten om foto’s, gepubliceerd via Twitter, aan een locatie te koppelen.  Geo-tag via Twitter; Een geo-tag is de GPS locatie, bijvoorbeeld van de smart phone, die gekoppeld kan worden aan een tweet of een foto. Minder dan 1% van alle tweets bevat een geotag 16 .  Geo-tag in de metadata van een foto; De geolocatie is opgeslagen in de EXIF data van een foto. Via Twitter gepubliceerde foto’s bevatten veelal geen GEO data in de EXIF.  Mention; Vermeldingen van locaties in de tekst van de tweet, bijvoorbeeld op basis van een hashtag als #2012olympics. Deze informatie is vaak onvoldoende specifiek. Daarnaast is deze informatie onbetrouwbaar, iedereen kan beweren dat hij ergens is. De koppeling van mention naar GPS locatie kan zou gemaakt kunnen worden met OpenStreetMap 17 . De data van OpenStreetMap is vrij beschikbaar. Deze aanknopingspunten om locaties te achterhalen voldoen dus niet. Tabel 4 presenteert enkele bestaande diensten die de mogelijkheid bieden om op locatie te zoeken. Dit betekent in alle gevallen dat er gezocht wordt naar Twitter berichten waarvan de Geo-tag aan stond op het moment dat ze geplaatst zijn. Erg populair is het om vervolgens deze tweets te plotten op een landkaart zoals Figuur 9 laat zien. Figuur 9. Tweets waarvan de geo-locatie bekend is worden geplot op een landkaart. Tabel 4. Overzicht met enkele diensten ’waarmee gezocht kan worden naar Twitter-foto’s op locatie. Dienst Opmerking Picfog Zoekt in de diensten: Yfrog, twitpic, lockerz en twitgoo Twipho Zoekt in de diensten twitpic, img.ly, yfrog en instagr.am Skylin.es Nederlandse dienst, die ook de optie geeft om real-time foto’s te monitoren op basis van een hash tag. 16 TNO onderzoek #ProjectX, Haren 17 OpenStreetMap Nederland; http://www.openstreetmap.nl/
  • 17. TNO-rapport | 17 / 55 Er bestaan dus diensten die het zoeken naar foto’s vanaf een bepaalde locatie mogelijk maken, maar er is geen dienst die het tegenovergestelde aanbiedt: een foto als input voor de vraag “waar is deze foto genomen?”. Uitdaging en toegevoegde waarde Gegeven dat locatiegegevens van gepubliceerde foto’s vaak onbekend of onbetrouwbaar zijn, formuleren wij de volgende uitdaging: Hoe kan beeldmerktechnologie de locatie achterhalen van een op Twitter gepubliceerde foto? Figuur 10 presenteert de drie stappen om deze dienst te gebruiken: 1. Vraag; Dit betreft een foto, waarvan de locatie onbekend is of gedeeltelijk onbekend is. Dit kan bijvoorbeeld de eerste foto zijn, die verband heeft met een incident, maar het kan ook een foto zijn die is genomen nadat een incident in kaart is gebracht. 2. Locatieherkenner; In deze stap gaat de locatieherkenner de foto proberen te matchen met een database met foto’s, waarvan de locatie bekend is. Het matchen is gebaseerd op beeldmerk- en databasetechnologie. Als men tijdens de vraag extra informatie heeft meegegeven, zoals bijvoorbeeld “Delft” dan kunnen alle foto’s die tot “Amsterdam” behoren uitgesloten worden. 3. Resultaat; Als resultaat krijgt de gebruiker een aantal mogelijkheden terug geordend naar de waarschijnlijkheid dat de match klopt. Op basis van de visuele kenmerken kan een analist de conclusie trekken dat de locatie correct is herkend. Figuur 10. Proces van locatieherkenning: van vraag, via de locatieherkenner naar het resultaat. Een bruikbare locatieherkenner moet aan de volgende eisen voldoen:  Betrouwbaar; de dienst moet duidelijk maken waarom geconcludeerd wordt dat een foto op een bepaalde locatie is genomen. Dit betekent dat de Locatie beschrijving Adres Postcode Plaats Gemeente Regio Provincie Land en / of Vraag Resultaat …. …. …. …. 1. 2. 3. 4. … Referentie database Locatieherkenner Meer voorkennis over de locatie zorgt voor een beter resultaat
  • 18. TNO-rapport | 18 / 55 referentiedatabase up-to-date moet zijn en dat herkenbaar beeldmateriaal teruggegeven moet worden.  Accuraat; de dienst moet de locatie met een zekerheid van enkele tientallen meters bepalen, preciezer is altijd beter. Als de output slechts “Amsterdam” is, dan is dat niet accuraat.  Real-time; de locatie van een foto moet bepaald kunnen worden binnen enkele seconden (max 10 seconde). Dit is van belang voor soepel gebruik van de dienst.  Gebruik beschikbare metadata; de dienst moet voorkennis mee kunnen nemen over de locatie, bijvoorbeeld “Rotterdam”.  Toestand onafhankelijk; de dienst moet onafhankelijk van het weer, maar ook van de situatie, de locatie kunnen bepalen. Dus moet er een mate van onafhankelijkheid zijn van regen, nacht, en verlichting, maar ook van voorbijgangers of andere verstoringen. De toegevoegde waarde van deze dienst voor de veiligheidsketen is:  Sneller een volledig beeld van de situatie voor hulpdiensten,  Mogelijkheden om eenvoudiger te komen tot reconstructie en verificatie voor opsporing. 3.2 Technologie De technologie is als volgt uitgewerkt. Eerst wordt de state of the art gepresenteerd, vervolgens wordt een experiment gepresenteerd op basis van de open source toolbox OpenCV en tenslotte wordt een geschikte architectuur geïntroduceerd. 3.2.1 State of the Art Vraag Aan de hand van een foto kun je meerdere vragen stellen die betrekking hebben op de locatie. Bijvoorbeeld, waar is deze foto gemaakt? Maar ook, in welke richting is de foto genomen ten opzichte van het object op de foto? Dit rapport beperkt zich tot de vraag: waar is deze foto genomen? Foto’s matchen Om een foto te koppelen aan een locatie wordt veelal hetzelfde principe toegepast. Er worden beeldkenmerken uit een foto geëxtraheerd die moeten corresponderen met kenmerken van foto’s in een referentiedatabase. Als voldoende bewijs is gevonden dat de twee foto’s dezelfde locatie betreffen, dan kan de locatie- informatie gekoppeld worden. Het matchen verloopt in twee stappen, zoals Figuur 11 illustreert. In de eerste stap worden technische beeldkenmerken geëxtraheerd en beschreven. Veelal worden kenmerken gebruikt die karakteristieke beeldpunten in groot technisch detail beschrijven. De beeldkenmerken: SIFT en SURF (zie 2.3.3), zijn het meest efficiënt en worden dus veel gebruikt. In de tweede stap wordt een geometrische test gedaan, om de geometrische relaties tussen de corresponderende beeldkenmerken te toetsen. Daar wordt het RANSAC algoritme gebruikt om een ruwe schatting te maken van de transformatie
  • 19. TNO-rapport | 19 / 55 matrix tussen twee afbeeldingen die hetzelfde beeld bevatten. Deze test leidt bijvoorbeeld tot een schatting van de onderlinge cameraposities. Kortom, foto’s kunnen met elkaar gematchd worden en dat gebeurd in twee stappen. Figuur 11. De twee stappen om twee foto’s te matchen; 1. Detectie van de meest informatieve beeldkenmerken; 2. Zoeken naar corresponderende beeldkenmerken plus eventueel een test op de geometrische constellatie van de gevonden matches. Referentiedatabase Voor onderzoek worden soms eigen foto’s gebruikt om een database op te bouwen van een beperkt gebied. Om een hoge dekkingsgraad te krijgen in een groter gebied is dit onmogelijk en worden externe bronnen geraadpleegd zoals Google Streetview of Flickr. Flickr is een fotodienst met foto’s van over de hele wereld die voor programmeurs goed toegankelijk is via hun API (Application Programming Interface), vandaar dat Flickr veel gebruikt wordt voor onderzoek. Een nadeel is de diversiteit van de beschikbare foto’s: binnen, buiten, mensen, dieren, portetten, landschappen, artistieke foto’s etc. Daarnaast zijn er verschillen in beschikbare meta-data. Sommige foto’s hebben een geo-tag of zijn voorzien van trefwoorden. Filteren en selecteren op basis van onze toepassing is noodzakelijk. Hier zou conceptherkenning een rol kunnen spelen, maar het is eenvoudiger om de beschikbare metadata te gebruiken. Bijvoorbeeld door alle foto’s met geografische gegevens én trefwoorden te selecteren, om vervolgens alle foto’s met trefwoorden als “verjaardag” en “concert” te verwijderen. Kortom, een referentiedatabase van goede kwaliteit opbouwen is niet triviaal. Google StreetView Streetview is een dienst van Google die is gelanceerd in mei 2007. De dienst biedt 360 foto’s van vrijwel alle toegankelijke wegen en straten in 48 verschillende Detectie en beschrijven van de meest informatieve beeldkenmerken Zoeken corresponderende beeldkenmerken plus evt test op geometrische constellatie 1 1 2
  • 20. TNO-rapport | 20 / 55 landen 18 . Nederland is een land met een hoge dekkingsgraad. De voordelen van deze database zijn homogene camera standpunten, betrouwbaarheid van de locatie, en de inhoud van de foto’s die veel meer reguliere straten weergeven in tegenstelling tot bijv. Flickr waar veel meer toeristische bezienswaardigheden te vinden zijn. De meeste gebruikers werken met de web interface, waar Figuur 12 een voorbeeld van laat zien. Daarnaast biedt Streetview mogelijkheden om gebruik te maken van de technologie en data via een API 19 . Figuur 12. Screenshot van het Binnenhof met de web interface van Google Streetview. De API is bedoeld voor derde partijen. Via een standard HTTP request is het voor gebruikers mogelijk om ruwe data te verzamelen, zoals de achterliggende foto’s. Het volgende verzoek levert de foto op die hoort bij Figuur 12: http://maps.googleapis.com/maps/api/streetview?size=800x800& location=52.080764%204.314298&fov=90&heading=235&pitch=0&sensor=false Deze API biedt goede mogelijkheden als referentiedatabase voor de locatieherkenner. Google heeft maatregelen genomen om het gebruik van deze API te beperken. Standaard gebruikers mogen maximaal 25.000 foto’s per dag downloaden met een maximum resolutie van 640 x 640 pixels. Daarnaast zijn er mogelijkheden voor zakelijke gebruikers om meer foto’s met hogere resoluties op te halen. Uiteraard zal voor deze dienst betaald moeten worden. Hoe vaak Google de data ververst is niet precies bekend, maar er zijn verschillende voorbeelden bekend waarbij de laatste update dateert uit 2008 20 . Kortom, Google Streetview biedt een zeer bruikbare en relevante database. Snelle databases 18 http://en.wikipedia.org/wiki/Google_Street_View 19 https://developers.google.com/maps/documentation/streetview/ 20 http://www.cbc.ca/news/yourcommunity/2012/10/google-street-view-car-driver-answers- questions-on-reddit.html
  • 21. TNO-rapport | 21 / 55 De uitdaging wordt om zoveel mogelijk foto’s met bekende locatie in een database onder te brengen en deze te voorzien van de juiste locatie informatie. Alle oplossingen voor locatieherkenning zijn gebaseerd op referentiedatabases. Een belangrijke vraag is dus: Hoe kan de referentiedatabase zo efficiënt mogelijk doorzocht worden. We onderscheiden twee mogelijkheden: 1) de beeldpunten zo structureren en ordenen dat deze sneller doorzoekbaar wordt (een index), of 2) het opslaan van een selectie van de beeldkenmerken. Hieronder gaan we uitgebreider in op deze twee mogelijkheden. Een index is een representatie van deze SIFT of SURF beeldkenmerken, die snel doorzocht kunnen worden. De database wordt beter doorzoekbaar omdat je snel kunt vaststellen dat eventuele corresponderende kenmerken in een bepaald deel van de database zit, waardoor niet met alle foto’s vergeleken hoeft te worden, maar slechts met een deel. Een voorbeeld van een dergelijk index is een zogenaamde kD-tree. Deze sorteert de data zodanig dat deze snel en effectief doorzoekbaar wordt, in plaats van alle afbeeldingen één-voor-één te scannen. Figuur 13 maakt de kD-tree inzichtelijk voor de 2 dimensionale case. Figuur 13. k-d tree decompositie21 voor de punten (2,3), (5,4), (9,6), (4,7), (8,1), (7,2). Een andere benadering richt zich op alleen relevante informatie in de database op te slaan door een algoritme naar de meest onderscheidende beeldkenmerken van een afbeelding zoeken 22 en die op te slaan. Photosynth Microsoft is de aanbieder van Photosynth. De basis van deze dienst is het automatisch maken van een 3D reconstructie op basis van overlappende foto’s, zoals Figuur 14 laat zien. Met betrekking tot de dienst “locatie herkennen” is de 3D reconstructie minder van belang, maar is het vooral interessant te zien dat deze dienst overlappende foto’s met elkaar kan verbinden. Deze operatie is eigenlijk een basis operatie voor de herkenning van de locatie, maar dan toegepast op een hele grote verzameling foto’s. 21 http://en.wikipedia.org/wiki/K-d_tree 22 Yunpeng Li, Noah Snavely, and Daniel P. Huttenlocher. Location recognition using prioritized feature matching. In Proceedings ECCV 2010. Springer-Verlag, Berlin, Heidelberg, 791-804.
  • 22. TNO-rapport | 22 / 55 Figuur 14. Voorbeeld van PhotoSynth waar verschillende afbeeldingen met overlap in elkaar overlopen. 3.2.2 Experiment Dit experiment beperkt zich tot de binnenstad van Delft. Figuur 15 presenteert een foto die is genomen door een voetganger, waarvan de locatie onbekend is. Figuur 15. Voorbeeld foto waarvan de locatie onbekend is. De database is opgebouwd met afbeeldingen afkomstig uit Google Streetview met bekende GPS coördinaten. Met behulp van OpenCV is onderzoeksoftware ontwikkeld om corresponderende kenmerken in twee foto’s te vinden. Per afbeelding uit de database is het aantal corresponderende beeldkenmerken berekend. Tabel 5 presenteert de lijst met afbeeldingen uit de referentiedatabase die is gesorteerd op basis van het aantal corresponderende kenmerken.
  • 23. TNO-rapport | 23 / 55 Tabel 5. Lijst kandidaten gesorteerd op basis van het aantal corresponderende kenmerken Positie Kandidaat Aantal corresponderende beeldkenmerken 1 75 2 63 3 56 4 56 Figuur 16 laat zien voor de tweede kandidaat dat de corresponderende kenmerken geen stand houden, omdat de geometrische relatie niet klopt. Hiervoor is een geometrische test ontwikkeld. Figuur 16. De corresponderende kenmerken met een negatieve geometrische test. De eerste ordening kan gebruikt worden om het aantal nader de onderzoeken locaties te reduceren, want het vinden van corresponderende kenmerken is een stuk sneller dan het uitvoeren van die geometrische test. De huidige test is gebaseerd op de sterkst overeenkomende structuur op een plat vlak, zoals de façade van een gebouw. Het is een onderzoeksvraag om deze test te implementeren voor kenmerken op verschillende 2D vlakken die matchen onder geometrische condities. Figuur 17 presenteert de corresponderende kenmerken die slagen voor de geometrische test.
  • 24. TNO-rapport | 24 / 55 Figuur 17. Corresponderende kenmerken onder voorwaarde van een geometrische test. Dit resultaat wordt gebruikt om de locatie waar de foto is genomen vast te stellen. Dit betreft dus de coördinaat (long,lat = 52.010763,4.358014) die verwijst naar de hoek van de Wijnhaven met de Oude Langendijk in Delft. Beperkingen Dit experiment lijkt veel belovend. Om inzicht te geven in de beperkingen zijn twee cases onderzocht: variatie in camera positie en variatie in belichting, kortom dag- nacht effecten. a. b. Figuur 18. Opname van dezelfde locatie onder twee verschillende hoeken met de bijbehorende corresponderende kenmerken; a. Een relatief kleine verplaatsing van de camera positie en b. Een forse verplaatsing van de camera, waarbij niet direct duidelijk is dat dit dezelfde locatie betreft. Voor het matchen van twee foto’s moeten er voldoende corresponderende kenmerken aanwezig zijn in beide foto’s. Daarom moeten de geëxtraheerde beeldkenmerken enigszins uniform gedistribueerd moet zijn over de foto. Figuur 18 laat zien dat de oplossing vrij goed overweg kan met variatie in de camera positie. Deze test liet tevens zien dat dit ongeveer de uiterste grens was, waarbij
  • 25. TNO-rapport | 25 / 55 redelijkerwijs nog matches gevonden konden worden. Om die reden formuleren we de volgende vuistregel: Voor de opbouw van de referentiedatabase wordt een straat goed vastgelegd als vanaf het midden van de straat een foto is gemaakt van beide zijdes (dus twee foto’s), waarbij iedere foto ongeveer 10 meter afdekt en voor voldoende dekking moeten de foto’s 33% overlappen. Deze vuistregel betekent dat iedere 6,66 meter 2 foto’s gemaakt moeten worden, dus per foto wordt 3,33 meter straat afgedekt. Deze informatie is belangrijk om de opslagcapaciteit van deze dienst in te schatten. Nederland telt bijna 150.000 km aan wegen en straten 23 , zodat er dus ongeveer 45 miljoen foto’s nodig zijn om Nederland af te dekken. Figuur 19. Voorbeeld van corresponderende kenmerken in twee foto’s van dezelfde locatie die overdag en ’s nachts zijn genomen. Een tweede variatie is de variatie in belichting die onder andere wordt veroorzaakt door de verschillen tussen dag en nacht, maar ook andere weersomstandigheden als regen of sneeuw. Figuur 19 laat een succesvol voorbeeld zien, waar een aantal corresponderende kenmerken zijn gevonden in twee foto’s van dezelfde locatie met veel verlichtingsvariatie. Voor de uiteindelijk implementatie van de locatieherkenner zal de methodiek geoptimaliseerd moeten worden voor grootschalig gebruik. 3.2.3 Architectuur Figuur 20 presenteert de architectuur van de locatieherkenner. De architectuur bestaat uit twee processen: locatie zoeken (operationeel proces) en referentiedatabase opbouwen (offline proces). De architectuur bestaat uit vier componenten:  Beeldkenmerken extraheren; Het locatie zoeken begint met de extractie van beeldkenmerken.  Snelle matching; Op basis van een selectie van de beeldkenmerken in combinatie met de beschikbare metadata wordt een zo groot mogelijk deel van de database uitgesloten.  Precieze matching; In de reduceerde database wordt met behulp van alle beeldkenmerken en extra operaties meer zekerheid verkregen of bepaalde 23 http://www.swov.nl
  • 26. TNO-rapport | 26 / 55 afbeeldingen daadwerkelijk overeenkomen met de zoekvraag. Dit resulteert in een lijst met foto’s, waarbij de waarschijnlijkheid dat een foto daadwerkelijk overeenkomt met de zoekvraag afneemt.  Referentiedatabase; Een essentiële rol in het proces speelt de referentiedatabase die alle foto’s van heel Nederland moet gaan bevatten. Voor de locatieherkenning moet deze database alle beeldkenmerken gaan bevatten. Figuur 20. Architectuur van de locatieherkenner Voor de verschillende componenten moeten de volgende onderzoeksvragen beantwoord worden: 1 Beeldmerken extraheren 1.1 Wat zijn de optimale beeldkenmerken (SIFT, SURF of anders) om te extraheren voor snelle en precieze matching? Moeten het alleen de sterkste kenmerken zijn, of moeten de kenmerken ook enigszins uniform verdeeld zijn over de foto? 1.2 Zijn deze kenmerken ook bruikbaar voor fingerprinting en conceptherkenning? Als dat mogelijk is, dan wordt de waarde van de geïndexeerde kenmerkendatabase een stuk groter. 2 Snelle matching 2.1 Hoe wordt snelle matching geïmplementeerd? Dit rapport gaat er vanuit dat er meerdere corresponderende kenmerken aanwezig moeten zijn in een afbeelding. Is dit een zinvolle snelle stap? 2.2 Idealiter wordt deze stap overgeslagen om de complexiteit te reduceren, maar in veel gevallen levert deze stap forse winst op. Is onmogelijk om precieze matching met voldoende snelheid te realiseren? 2.3 Dit kunnen beeldkernmerken zijn, maar ook metadata, zoals het gegeven dat het een opname uit “Delft” betreft. Op welke wijze wordt deze optie geïmplementeerd en gecombineerd met de beeldinformatie? Beeld- kenmerken extraheren Snelle matching Referentiedatabase opbouwen Referentie- database Precieze matching Ranking Lijst mogelijk matchende beelden + locatiebeschrijvingen Locatie zoeken …. …. Beeld- kenmerken extraheren
  • 27. TNO-rapport | 27 / 55 3 Precieze matching 3.1 Hoe wordt een ranking verkregen met maximale kwaliteit? Dit rapport gaat er vanuit dat deze kwaliteit verkregen wordt op basis van de geometrische test. 3.2 Kunnen verschillende vlakken met corresponderende beeldkenmerken met elkaar gerelateerd worden op basis van een dynamische geometrische test? 4 Referentiedatabase 4.1 Op welke wijze worden de afbeeldingen en haar beeldkenmerken optimaal geïndexeerd om de matching te faciliteren? Is een kD-tree de beste oplossing? 4.2 Wie levert de referentiedatabase? Het is bijna onmogelijk deze database te vullen met eigen materiaal. Daarom zal samenwerking gezocht moeten worden met een derde partij met een geschikte database. Vervolg onderzoek zal deze vragen moeten beantwoorden. 3.3 Organisatie De belangrijkste organisatorische aspecten van deze dienst zijn: samenwerking met partners en technologie leveranciers en het inrichten van de benodigde infrastructuur. 3.3.1 Referentiedatabase De matching vereist een referentiedatabase waar alle foto’s en hun locatiegegevens van Nederland zijn opgeslagen. De belangrijkste partij die een dergelijke database bezit met een hoge dekkingsgraad is Google Streetview. Om die reden zou onderzocht moeten worden of met Google samengewerkt kan worden. Het downloaden van deze database naar een server die geschikt is om foto’s mee te vergelijken is toegestaan volgens de gebruiksvoorwaarden van Google. Er zit alleen een beperking op het aantal foto’s dat per dag gedownload mag worden van 25.000 foto’s per dag. Door deze beperking kost het ongeveer 1800 dagen (bijna 5 jaar) om 100% dekkingsgraad voor Nederland te verkrijgen. Dit is op te lossen door meerdere servers parallel te gebruiken, wat niet in overeenstemming is met de gebruiksovereenkomst. Naast Google Streetview zijn er enkele andere databases ontwikkeld die mogelijk geschikt zijn als referentiedatabase, zoals Panoramio 24 (tevens eigendom van Google), Flickr 25 , Funda 26 (niet 100% dekkend, maar goede locatie koppeling) of Skylines 27 . Indien de database niet betrokken kan worden, dan zou die (door)ontwikkeld kunnen worden bijvoorbeeld in samenwerking met de 24 http://www.panoramio.com/ 25 http://www.flickr.com/ 26 http://www.funda.nl/ 27 http://www.skylines.io/
  • 28. TNO-rapport | 28 / 55 Nederlandse partij Cyclomedia 28 . Voor de ontwikkeling van de locatie herkenner is een referentiedatabase vereist en de vraag die beantwoord moet worden is: Met welke partij moet worden samengewerkt om een betaalbare referentiedatabase te verkrijgen met voldoende kwaliteit foto’s en een goede dekkingsgraad? Met betrekking tot de technologiepartners moet een aantal selectie criteria worden vastgesteld en vervolgens gezocht worden naar de partij die hieraan voldoet. Uitgangspunt blijft een open en licentievrije oplossing. 3.3.2 Infrastructuur Voor de levering van deze dienst moet een infrastructuur worden ingericht. De specificatie van die infrastructuur bestaat uit een drietal componenten voor twee processen. Tabel 6 presenteert de samenvatting die vervolgens wordt toegelicht. Tabel 6. Specificatie van de benodigde infrastructuur voor de dienst “Locatie zoeken” Proces Referentiedatabase Locatie zoeken Rekenkracht (cores, rekenunits) 40 100 Opslag (TB, terrabytes) 45 TB 45 TB Bandbreedte (Mbps, megabit per seconde) 12 (download) ~0 (upload) 8 (download) 80 (upload) Rekenkracht De wens om het zoekresultaat binnen 10 seconde beschikbaar te hebben, correspondeert met de volgende behoefte aan rekenkracht per vraag:  1 s extractie van 1000 beeldkenmerken op 1 core.  1 s fast matching, onder aanname geïndexeerde database met beeldkenmerken.  Totaal 45 miljoen foto’s,  36 vergelijkingen per beeldkenmerk om de dichtstbijzijnde te vinden (Uitgaande van binary search op alle kenmerken)  1 µs per vergelijking tussen twee beeldkenmerken  Per vraag bestaande uit 1000 beeldkenmerken kost minder dan 1 s op 1 core.  8 s precieze matching  Geometrische test kost 1 ms per test tussen twee afbeeldingen  Wordt uitgevoerd op de 50.000 best matchende foto’s uit fase fast matching  Vereist 7 cores.  Management 1 core Het beantwoorden van 1 vraag duurt 10 seconde en vereist 10 cores. Bij een piekbelasting van 10 vragen betekent dit voor de operationele services 100 cores vereist. Het indexeren van de referentiedatabase vereist ook enige rekenkracht. Uitgaande van  De index wordt opgebouwd binnen 30 dagen. 28 http://www.cyclomedia.nl/
  • 29. TNO-rapport | 29 / 55  2 s per foto (extractie van beeldkenmerken plus kenmerken plaatsen in de index)  1,2 miljoen foto’s verwerken per core per 30 dagen In totaal is zijn ongeveer 40 cores nodig om de 45 miljoen foto’s te indexeren binnen 30 dagen. Opslag Om de grootte van de referentiedatabase in te schatten is de volgende analyse gemaakt:  Nederland telt bijna 150.000 km aan wegen en straten 29  1 foto per 3,33 meter weg (foto per 10 meter straat met 1/3 overlap en een foto van beide zijden) 30  1 MB per foto (voldoende resolutie voor goede herkenning en tevens de resolutie die Google Streetview ter beschikking stelt) In totaal levert dit een referentiedatabase op met bijna 45 miljoen foto’s en dus een opslagcapaciteit van 45 TB. Deze hoeveelheid foto’s moet tevens geïndexeerd worden, wat leidt tot een index die bestaat uit de beeldkenmerken van alle foto’s die opgeslagen zijn in een snelle zoekstructuur (binary search in kD-tree). De grootte van de index wordt geschat op maximaal grote van de referentiedatabase: 45 TB. Bandbreedte De referentiedatabase zal met enige regelmaat ververst moeten worden. Bij de aanname dat de volledige referentiedatabase jaarlijks vernieuwd wordt, levert dit een structurele bandbreedte behoefte op van ruim 12Mbps download. De benodigde bandbreedte om gebruik te maken van de dienst bestaat uit 1MB (1 foto) download naar het systeem per vraag en 10MB (10 foto’s) upload per resultaat naar de gebruiker. Uitgaande van piekbelasting van 10 parallelle vragen per 10 seconde, levert dit 8 Mbps per seconde download en upload van 80 Mbps. 3.4 Financiën 3.4.1 Ontwikkel- en onderzoekprogramma Uit verschillende voorbeelden blijkt de enorme uitdaging van het opzetten van een systeem zoals hierboven geschetst. Er is een multidisciplinaire, programmatische aanpak nodig, waarin verschillende onderzoek- en ontwikkelprojecten geïntegreerd worden tot de juiste implementatie over de vier domeinen uit het STOF model. Voor dit rapport in zijn geheel wordt een programmaschets op detail niveau gepresenteerd in hoofdstuk 7. 3.4.2 Operationele kosten Naast de investering om deze projectresultaten te verkrijgen, zijn er maandelijkse operationele kosten van de dienst, deze kosten zijn direct af te leiden uit de infrastructuur. Daarnaast is er een post opgenomen voor het beheer van de dienst van 1 FTE. 29 http://www.swov.nl 30 Resultaat proof of principle
  • 30. TNO-rapport | 30 / 55 Tabel 7. Operationele kosten per maand voor de dienst “Locatie zoeken”. Aantal Eenheid 31 Kosten Rekencapaciteit (cores) 140 € 20 € 2800 Opslag (TB) 90 € 10 € 900 Bandbreedte (Mbps) 100 € 2 € 200 Beheer (FTE) 1 € 5000 € 5000 Totaal per maand € 8900 3.5 Conclusies Op basis van de dienst “Locatie herkennen” worden de volgende conclusies getrokken:  De dienstverkenning maakt de behoefte aan locatieherkenning op basis van beeldmateriaal expliciet: snel een compleet beeld te verkrijgen van een bepaalde situatie.  De technologische mogelijkheden zijn geanalyseerd aan de hand van state of the art, proof of principle en een architectuur. De state of the art analyse maakt duidelijk dat verschillende dienstcomponenten zijn onderzocht en mogelijkheden bieden. De uitgevoerde experimenten maken duidelijk dat OpenCV potentie heeft. Zonder zware optimalisatie zijn voorbeelden getest die invariant zijn voor camera posities en dag-nacht effecten. Tenslotte levert de architectuur de belangrijkste onderzoeksvragen op:  Wat zijn de optimale beeldkenmerken (SIFT, SURF of anders) om te extraheren voor snelle en precieze matching? Moeten het alleen de sterkste kenmerken zijn, of moeten de kenmerken ook enigszins uniform verdeeld zijn over de foto?  Op welke manier kan beschikbare metadata, zoals “Delft”, het zoeken versnellen?  Kan een slimme geometrische test worden ontwikkeld die verschillende vlakken met corresponderende beeldkenmerken met elkaar kan relateren? Dit zou leiden tot een test die specifiek is voor de locatieherkenner.  Op welke wijze worden de afbeeldingen en haar beeldkenmerken in de referentiedatabase opgeslagen, zodanig dat de snelheid en kwaliteit wordt geoptimaliseerd?  De organisatorische verkenning leidt tot aanbeveling om samenwerking met Google te onderzoeken, voornamelijk in het kader van Google Streetview. Daarnaast wordt duidelijk dat een stevige infrastructuur nodig is op basis van de specificatie van de benodigde infrastructuur.  De financiële analyse maakt inzichtelijk dat de operationele kosten voor deze dienst in de orde van € 10.000 per maand zijn. Voordat deze fase bereikt kan worden, moet de investering door middel van het ontwikkel- en onderzoekprogramma uitgevoerd en afgerond zijn. . 31 Zie sectie 2.5 Financiële aspecten
  • 31. TNO-rapport | 31 / 55 4 YouTube32 Scannen YouTube is het bekendste videoplatform op internet. Alternatieven zijn Vimeo 33 en Viddler 34 . Dit hoofdstuk richt zich op YouTube, maar de geboden services en content van bijvoorbeeld Vimeo en Viddler zijn vergelijkbaar. YouTube biedt gebruikers de mogelijkheid filmpjes te uploaden, die vervolgens door andere gebruikers bekeken kunnen worden. Op YouTube zijn allerlei homevideos te vinden, maar er worden ook professionele producties gehost en bekeken. Voor veiligheidsdiensten is het relevant om automatisch geïnformeerd te worden over nieuw en opvallend materiaal. Figuur 21. Groei van het aantal uur video dat per minuut wordt gepubliceerd via YouTube (juni 2012). 4.1 Service Beeldmerken kunnen een belangrijke rol spelen voor opsporingsdoeleinden. Een goed voorbeeld zijn de tattoo killers, een groep criminelen die allemaal dezelfde Chinese tekens als tatoeage op de rug dragen. Een ander voorbeeld is het logo van al Qa’ida (of andere Arabische tekst of boodschappen) dat voorkomt in videoboodschappen van terroristen of groeperingen die zich met hen associëren. Ook slachtoffers en vermiste personen zijn op beeldmateriaal soms te herkennen aan de hand van hun kleding, en in het bijzonder aan specifieke logo’s of tekens op hun kleding. Op dit moment hebben de veiligheidsdiensten heel beperkt grip op de stroom videobeelden die op YouTube gepubliceerd wordt. Grote partijen zoals YouTube maar ook Google, richten zich vrijwel uitsluitend op consumenten, en zullen niet snel oplossingen voor opsporingsdiensten aan bieden. 32 http://www.youtube.com/ 33 http://vimeo.com/ 34 http://www.viddler.com/
  • 32. TNO-rapport | 32 / 55 YouTube ontvangt 72 uur video per minuut 35 (juni 2012) en dit aantal neemt alleen maar toe, zoals Figuur 21 laat zien. Het is onmogelijk om al deze video’s handmatig te analyseren. Zoeken in YouTube is natuurlijk wel mogelijk, maar de zoekfunctie is gebaseerd op de beschikbare metadata. De metadata is vaak beperkt en niet betrouwbaar op het moment van publiceren en wordt vaak later toegevoegd door verschillende gebruikers. Dit is zeker het geval als de uploader niet de bedoeling heeft dat een video eenvoudig gevonden wordt. Figuur 22 presenteert een voorbeeld video met veel metadata, maar geen Engels- of Nederlandstalige. Figuur 22. Voorbeeld van een YouTube video met niet Engelstalige metadata. Dit hoofdstuk beschrijft een ICT dienst die YouTube scant. Deze dienst geeft aan welke nieuwe video’s de geselecteerde beeldmerken bevat. Figuur 23 presenteert de werking van deze dienst. Deze dienst bestaat uit drie stappen: 1. Model leren; Een onderzoeker selecteert een foto of frame en geeft aan welk beeldmerk relevant is, en dus binnen YouTube herkend moet worden. Op basis van deze informatie leert het systeem een relevantie model. Indien meerdere voorbeelden beschikbaar zijn, dan wordt in potentie de herkenning beter. Dit model wordt opgeslagen en gebruikt om de stroom YouTube video’s 35 http://www.forbes.com/sites/anthonykosner/2012/05/21/youtube-turns-seven-now-uploads-72- hours-of-video-per-minute/
  • 33. TNO-rapport | 33 / 55 te analyseren. 2. YouTube video’s scannen; De dienst scant vervolgens 24/7 de nieuwste video’s die op YouTube wordt gepubliceerd op zoek naar de geselecteerde beeldmerken. 3. Feedback geven; De mogelijk relevante video’s worden vervolgens aan de onderzoeker aangeboden, om de inhoud ervan vervolgens handmatig te interpreteren en de mogelijke impact te beoordelen. Figuur 23. Werking van de dienst “YouTube Scannen” Uitdaging en toegevoegde waarde De essentie van de uitdaging om deze dienst te realiseren is: Hoe kan beeldmerktechnologie relevante YouTube video’s herkennen? Deze dienst moet voldoen aan de volgende eisen om bruikbaar te zijn:  Betrouwbaar; De dienst moet resultaten teruggeven die het geselecteerde beeldmerk bevatten. Daarnaast moet je er op kunnen rekenen dat de dienst geen beeldmerken heeft gemist.  Real-time; De dienst moet relevante resultaten zo snel mogelijk kunnen vinden nadat ze gepubliceerd zijn. Er wordt uitgegaan van maximaal een uur na publicatie. De belangrijkste toegevoegde waarde van deze ICT dienst is snel geïnformeerd zijn over relevante video’s in plaats van deze toevallig in het zicht krijgen. Denk Analyse afbeeldingen Exit Number matching keypoints Anonymous Bv. Specifieke beeldmerken: Relevantie model Anonymous Al Qa’ida Onderzoekers 3. Feedback geven 1. Model leren 2. YouTube frames scannen
  • 34. TNO-rapport | 34 / 55 bijvoorbeeld aan de “nep”-Anonymous video 36 die recent door een puber werd gepubliceerd. 4.2 Technologie Dit hoofdstuk verkent het gebruik van beeldmerktechnologie voor de beoogde ICT dienst. Deze bestaat uit een inventarisatie van de state of the art, vervolgens enkele experimenten gebaseerd op OpenCV om zicht te krijgen op de mogelijkheden van deze open source oplossing en ten slotte wordt de architectuur gepresenteerd van de dienst met bijbehorende onderzoeksvragen. 4.2.1 State of the Art TRECVID: Instance Search 37 Het belangrijkste doel van de TREC Video Retrieval Evaluation (TRECVID) is vooruitgang boeken in de semantische analyse van digitale video door middel van evaluatie. TRECVID is een laboratorium-achtige evaluatie, die probeert reële situaties of belangrijke taken te modelleren. Dit levert inzichten op welke aanpakken succesvol zijn op een gemeenschappelijke dataset en kennis over welke situaties makkelijker of moeilijker zijn. TRECVID levert geen productierijpe tools op. Binnen TRECVID zijn verschillende taken gedefinieerd, waaronder “Instance Search” waar TNO 38 aan heeft bijgedragen in 2010, 2011 en 2012. Binnen deze taak moeten specifieke concepten, zoals personen, locatie’s en objecten, worden gevonden in ongeveer 1000 video’s op basis van één of meer voorbeeld afbeeldingen. De geteste oplossing is gebaseerd op het Bag-of-Words model. Deze benadering vertaalt ieder beeldkenmerk naar visueel woord. Met een op tekst gebaseerde zoekmachine worden deze woorden, en daarmee dus de video’s, doorzoekbaar gemaakt. Belangrijke conclusies van het TNO onderzoek zijn:  Als een zoekvraag is afgebakend tot een onderscheidend visueel concept, dan werkt de herkenning beter.  Als minder visuele woorden worden gedefinieerd (256 in plaats van 1024), dan levert dit betere resultaten op.  Als interactief wordt gezocht, dan worden er betere resultaten bereikt als per iteratie de zoekvraag wordt aangescherpt. Verbetering objectherkenning op YouTube video’s 39 Deze publicatie presenteert een aanpak om objecten te herkennen in YouTube video’s door de relevante concepten te definiëren met meerdere afbeeldingen. De kracht van beeldmerktechnologie zit in het herkennen van structuren op platte 36 Tele2, KPN, Ziggo en UPC bereiden zich voor op cyberaanval; http://www.nu.nl/internet/2932518/tele2-kpn-ziggo-en-upc-bereiden-zich-cyberaanval.html 37 http://www-nlpir.nist.gov/projects/tv2012/tv2012.html 38 xxxxxxxx, “Notebook paper: TNO instance search submission 2011”, Proc. TRECVID, (2011). 39 M. Bassiouny and M. El-Saban, Object matching using feature aggregation over a frame sequence. In Proceedings of WACV. 2011, 95-102.
  • 35. TNO-rapport | 35 / 55 vlakken, terwijl de meeste objecten bestaan uit gekromde oppervlaktes met verschillende belichtingseffecten. In dit geval werkt de technologie niet altijd even goed. Deze publicatie stelt voor om een korte video van het object als input te gebruiken, daar enkele shots uit te extraheren en vervolgens wordt de matching uitgevoerd op basis van lokale features en corresponderende kenmerken. Deze publicatie laat zien dat het leren van een model op basis van meerdere shots leidt tot ongeveer 20% betere resultaten ten opzichte van modellen gebaseerd op één frame of één afbeelding. Deze resultaten zijn getest op een aantal YouTube video’s. Kortom, zowel uit deze publicatie als uit de TRECVID inspanningen blijkt het belang van een meerdere voorbeeldafbeeldingen om mee te zoeken. Tabel 8. YouTube API voorbeelden Toelichting API http://gdata.YouTube.com/demo/index.html Meest recente video’s http://gdata.YouTube.com/feeds/base/standardfeeds/ most_recent?client=ytapi-YouTube-browse&alt=rss Meest populaire video’s http://gdata.youtube.com/feeds/api/standardfeeds/ most_popular Zoeken http://gdata.YouTube.com/feeds/ api/videos?orderby=updated&vq=##zoekterm## YouTube API YouTube biedt verschillende APIs (Tabel 8) om informatie over YouTube video’s op te vragen, zoals de populairste video’s, de nieuwste video’s of video’s waarbij een bepaald keyword wordt genoemd. YouTube biedt ook RSS feeds aan om deze informatie op te halen (Figuur 24). Een belangrijk element zijn de UIDs, de zogenaamde “unique identifiers” die gebruikt worden om een video te identificeren. De UID van een video is de cryptische string die volgt na het “=”-teken: http://www.YouTube.com/watch?v=MU8yGWHwM2k. Figuur 24. De RSS-feed met de meest recente YouTube videos; sommige videos bevatten bijna geen metadata, zoals dit voorbeeld laat zien.
  • 36. TNO-rapport | 36 / 55 YouTube biedt de mogelijk aan de uploader om video’s in verschillende resoluties te plaatsen, zoals Figuur 25 inzichtelijk 40 maakt. De factoren die de beschikbare resoluties bepalen zijn:  Het gebruikte apparaat om de content te bekijken (een laptop of pc ondersteunt hogere resoluties dan een Smartphone).  De beschikbare bandbreedte.  De kwaliteit van het bronmateriaal.. Voor een 720p video inclusief audio is de benodigde bitrate 2 – 3,5 Mbit per seconde. Op dit moment is 10% van de video’s is beschikbaar in HD kwaliteit (dat betekent 720p of hoger). De verwachting is dat dit percentage zal toenemen: moderne smartphones (iPhones, Android) en tablets ondersteunen steeds meer opname in HD resolutie. Ook de toename van professionele content zal leiden tot een groei in content aangeboden in hogere resolutie. Dit rapport hanteert een gemiddelde bandbreedte per video van 2Mbit per seconde. Figuur 25. Overzicht met verschillende kwaliteiten die YouTube biedt; dit rapport hanteert een gemiddelde bandbreedte per video van 2Mbit per seconde. De YouTube API biedt geen optie om video’s te downloaden. Toch kan middels scripts, software of bepaalde websites nagenoeg elke video worden gedownload. In hoeverre dit toegestaan is, is onduidelijk. Wel is duidelijk dat er een wapenwedloop is tussen Google, dat probeert het downloaden onmogelijk maken, en de aanbieders van download-tools, die de nieuwste beveiligingsmaatregelen proberen te omzeilen. Met behulp de YouTube API kan je een video starten vanaf een bepaald tijdstip: http://www.YouTube.com/watch?v=kArc9v6JHSg#t=10s (start bij t=10s) http://www.YouTube.com/watch?v=kArc9v6JHSg#t=20s (start bij t=20s). Deze eigenschappen kunnen gebruikt worden bij het downloaden, zodat niet de volledige video gedownload hoeft te worden. YouTube biedt niet alleen video’s aan, maar ook losse screenshots (i.ytimg.com/vi/##UID##/0.jpg) en een storyline aan per video, voor het verrijken van de user-experience, zoals Figuur 26 laat zien. Deze shots zijn los op te vragen, zonder dat de video volledig bekeken of gedownload hoeft te worden. 40 http://en.wikipedia.org/wiki/YouTube
  • 37. TNO-rapport | 37 / 55 Kortom, YouTube biedt mogelijkheden om bijvoorbeeld de UIDs van de nieuwste videos te vinden en daarnaast per video een screenshot te verkrijgen. Daarentegen biedt YouTube geen mogelijkheden om op basis van beeldinformatie te zoeken of videos te scannen. a. b. Figuur 26a. Voorbeeld van een screenshot; en b. storyline die te verkrijgen zijn bij een video. 4.2.2 Experiment Op basis van een aantal cases is onderzocht in hoeverre de beeldmerktechnologie zoals die is geïmplementeerd in OpenCV relevante concepten kan herkennen. Figuur 27 presenteert een match van het Anonymous logo met een Anonymous masker afkomstige uit een YouTube video. Het aantal corresponderende beeldkenmerken is van dien aard dat het experiment geslaagd is. Het laat bijvoorbeeld zien dat de effecten van de videocompressie niet verstorend zijn voor de matching. Figuur 27. Beeldmerktechnologie toegepast op een Anonymous logo en de corresponderende kenmerken met het Anonymous masker in een YouTube video. Figuur 28 presenteert een voorbeeld waarbij een match is gevonden tussen twee afbeeldingen, waarbij één van de afbeeldingen is gemanipuleerd. Dit voorbeeld laat zien dat deze experimentele implementatie robuust is tegen variaties in de afbeelding als er maar voldoende beeldkenmerken beschikbaar zijn die wel overeenkomen met een gezocht model.
  • 38. TNO-rapport | 38 / 55 Figuur 28. Match tussen twee afbeeldingen met de Tattoo killers, waarbij één van de afbeeldingen is gemanipuleerd. Tenslotte maakt het voorbeeld in Figuur 29 duidelijk dat de technologie enige flexibiliteit met zich meebrengt. De twee al Qa’ida logo’s zijn niet exact gelijk en toch wordt er een correcte match gevonden. Uiteindelijk vereist het optimalisatie van de verschillende parameters om enerzijds flexibel te zijn voor voldoende precisie en anderzijds strak genoeg te zijn voor zo min mogelijk vals-positieve matches. Figuur 29. Corresponderende beeldkenmerken tussen twee al Qa’ida logo’s, waarbij de logo’s duidelijk niet exact gelijk zijn. 4.2.3 Architectuur Figuur 30 presenteert de architectuur op hoofdlijnen voor de ICT dienst “YouTube Scannen”. De architectuur bestaat grofweg uit drie processen: 1 Verzamelen UIDs; dit zijn de UIDs van de nieuwste video’s. Deze UID’s kunnen verkregen worden via de YouTube API, maar ook uit sociale media of bijvoorbeeld als resultaat van een zoekactie. 2 Snelle test; Op basis van beschikbare metadata bepaalt een snelle test (< 1ms) of de video wel of niet relevant is. Als er weinig of geen tekstuele metadata beschikbaar is, kan het enkele frame op beeldinhoud getest worden. 3 Precieze test; Op basis van een grondige analyse van de beeldinhoud van de video wordt definitief vastgesteld of de video relevant is voor een eindgebruiker. Dit betreft het extraheren van onderscheidende frames (bijvoorbeeld elke 10s één frame) uit de video en deze analyseren. Tenslotte zullen de eindgebruikers de video’s voorgelegd krijgen met een positieve precieze test.
  • 39. TNO-rapport | 39 / 55 Figuur 30. Architectuur voor de dienst “YouTube Scannen”, bestaande uit drie processen: UIDs verzamelen, snelle test en een precieze test. Per proces zijn dit de belangrijkste onderzoeksvragen: 1 Verzamelen UIDs 1.1 Wordt 100% van de nieuwste UIDs aangeleverd door de API? Of is het een fractie? Indien het een fractie betreft, welke maatregelen kunnen er genomen worden om tot een acceptabel percentage te komen? 2 Snelle test 2.1 Met welke zekerheid kan deze snelle test worden uitgevoerd? Het is onmogelijk elk frame van elke YouTube video te analyseren, dus is de eerste selectie op basis van concept herkenning erg belangrijk voor de betrouwbaarheid van de dienst. 2.2 Hoe betrouwbaar is de tekstuele metadata? 2.3 Hoe kan conceptherkenning ingezet worden voor het uitsluiten op basis van een enkel frame? 3 Precieze test 3.1 Op welke wijze kunnen de video’s gedownload worden? Is dit een toekomstbestendige oplossing? 3.2 Welke precisie en foutmarge kan worden bereikt? Kortom, hoeveel voorgelegde video’s zijn relevant en hoeveel video’s worden gemist? 3.3 In hoeverre is compressie van invloed op de herkenningskwaliteit? 3.4 Hoeveel relevante video’s blijven over? Dit is onder andere van belang voor de wijze waarop het materiaal vervolgens uitgekeken moet worden. Test metadata of frame Test frame Videoframe - Extraheer UIDs uit “most recent videos” - Extraheer UIDs op basis van zoeken - Extraheer UIDs uit andere bronnen, zoals sociale media. Exit Relevante video’s voorleggen UID Frame downloaden Video UID Video downloaden Extraheer subset videoframes Extraheer frame per videoshot ExitEindgebruikers 1. UIDs verzamelen 2. Snelle test 3. Precieze test
  • 40. TNO-rapport | 40 / 55 3.5 Hoe kan een gebruiker zoveel mogelijk video’s zo snel mogelijk bestuderen? Hierbij kan gedacht worden aan een MosaicUI interface zoals Figuur 31 presenteert. Figuur 31. MosaiUI41 interface om snel grote hoeveelheden video te analyseren. 4.3 Organisatie Voor de organisatie van de dienst “YouTube Scannen” zijn de belangrijkste zaken: impact op de gebruikersorganisatie, samenwerking met data en technologie leveranciers en de dimensionering van de infrastructuur die ingericht moet worden. 4.3.1 Gebruikersorganisatie Deze nieuwe diensten hebben uiteraard ook impact op de gebruikersorganisatie. Voor hen is belangrijk zicht te krijgen op:  Hoeveel manuren heb je nodig om de resultaten die terugkomen te bekijken en te beoordelen?  Vervolgens moet de informatie bij de juiste persoon in de organisatie terecht komt. Hoe verloopt dat proces?  Het beeldmateriaal moet op een juiste manier opgeslagen worden, bijvoorbeeld in combinatie met de bevindingen. Is een dossiersysteem een goede aanpak?  Men moet modellen definiëren en mogelijk bijtrainen om de herkenningskwaliteit te verbeteren. Dit vraagt om opleiding en training van de medewerkers. Kortom, dit is een belangrijk aspect om tijdig in beeld te krijgen bij het realiseren van dergelijke diensten. Dit kan bijvoorbeeld bereikt worden door in een pilotfase enthousiaste professionals mee te laten testen. 4.3.2 Samenwerking Voor de levering van deze dienst moet de samenwerking met een aantal mogelijke partijen onderzocht worden. De belangrijkste partij is Google als eigenaar van YouTube. Er zijn een aantal onderzoeksvragen (voornamelijk 1.1 en 3.1) die afhankelijk zijn van Google. Mogelijk kunnen deze relatief makkelijk worden ingevuld op basis van een goede samenwerking. Daarbij is het belangrijk 41 MosaicUI: Interactive media navigation using grid-based video. Arjen Veenhuizen, Ray van Brandenburg, Omar Niamut. TNO, Delft, The Netherlands, EuroITV2012.
  • 41. TNO-rapport | 41 / 55 alternatieve modellen niet uit te sluiten, waardoor bijvoorbeeld een stuk rekenkracht bij Google plaats kan vinden. Naast deze voordelen is het ook van belang dat veiligheidsdiensten deze oplossingen op een veilige manier gebruiken. Momenteel worden dergelijke diensten niet geleverd door Google. Daarnaast is het logisch dat in het kader van politieonderzoek gevoelige informatie niet naar de servers van een derde partij verstuurd worden. Het opzetten van een overheidsservice ligt dus voor de hand. Maar ook met Google wordt niet per definitie uitgesloten. 4.3.3 Infrastructuur Uitgaande van de voorgestelde architectuur wordt de infrastructuur gedimensioneerd. Deze infrastructuur kan worden gespecificeerd zoals Tabel 9 laat zien. Deze specificatie wordt vervolgens toegelicht. Tabel 9. Specificatie van de benodigde infrastructuur voor de dienst “YouTube Scannen” Zoekvragen trainen YouTube scannen Rekenkracht (cores, rekenunits) 2 180 Opslag (TB, terrabytes) ~0 9 Bandbreedte (Mbps, megabit per seconde) ~0 900 Rekenkracht Om de modellen te trainen moet een analist een aantal logo’s of voorbeeld afbeeldingen aanbieden met de beeldmerken die herkend moeten worden. In vergelijking met het proces dat daadwerkelijk YouTube video’s analyseert, vereist dit een beperkte hoeveelheid rekenkracht. Op basis van 2 cores moet het mogelijk zijn deze modellen te leren. Opslag en bandbreedte is verwaarloosbaar en wordt daarom ongeveer op 0 geschat. Snelle test:  Er wordt 72 uur video materiaal per minuut op YouTube geplaatst, met een gemiddelde lengte van 4 minuten (240 seconden) per video. Dit betekent 1080 nieuwe video’s per minuut.  Analyse van 1 frame uit elke video kost 2 seconde per frame (downloaden, analyse en conclusie) op 1 core.  Voor 1080 video’s per minuut is dit 2160 seconden rekentijd per minuut.  36 parallelle cores zijn nodig om de eerste berekening uit te voeren. Precieze test:  Aan de hand van de analyse van één representatief frame wordt aangenomen dat 90% van de video’s worden aangemerkt als niet relevant. Dit betekent dat 10% van de video’s per minuut in aanmerking komt voor diepte analyse. (108 video’s van 240 seconde per video)  Schatting: Downloaden van een video gaat 10x sneller dan afspelen. 240/10 = 24 seconden voor downloaden van één video.  Gegeven: Extractie van een shot gaat 10x sneller dan afspelen. 240/10 = 24 seconden voor extractie van één video.  Schatting: Een shot duurt 10 seconden. 240/10 = 24 shots per video.
  • 42. TNO-rapport | 42 / 55  Gegeven: Analyse + geometrische test, kost 1 s per shot. 24 (shots) * 1 (seconde) = 24 seconden analyse.  Resultaat: Downloaden + Extractie + Analyse = 72 seconden rekentijd per video. 72x108 video’s ~ 8000 seconden rekentijd per minuut.  In totaal zijn er ongeveer 140 cores nodig zijn om 10% van al het nieuwe YouTube materiaal per minuut te analyseren. Inclusief enige overhead maken wij een schatting van 180 cores rekenkracht. Opslag Opslag wordt bepaald door het aantal video’s dat daadwerkelijk bekeken moet worden. Uitgaande dat zo’n 500 gebruikers de dienst gaan gebruiken en dat zij dagelijks 10 video’s krijgen, er vanuit gaande dat de video’s een maand (30 dagen) bewaard blijven, levert dit een benodigde opslagcapaciteit op van 150.000 video’s. Gemiddeld is een video 4 minuten en encodeert YouTube video met ongeveer 2 Mbps. Dat resulteert in een opslag van ongeveer 9TB. Bandbreedte De bandbreedte is opgebouwd uit twee stromen. De losse frames die binnengehaald worden à 20kB per video en de stroom complete videos die gedownload worden. Bij 1080 videos per minuut is dat ongeveer 20MB per minuut, dat neerkomt op 3 Mbps. Daarnaast moeten de video’s zelf binnen gehaald worden, dit betreft slecht 10% van het totaal, dus 108 video’s per minuut a 4 minuten per video. Iedere minuut moeten er dus 450 video’s op die gedownload moeten worden. Per video gecodeerd op 2 Mbps correspondeert dit met bijna 900 Mbps. 4.4 Financiën 4.4.1 Onderzoek- en ontwikkelprogramma Net als de dienst “Locatie herkennen op Twitter” kan deze ICT dienst alleen succesvol worden uitgerold als alle vier de domeinen uit het STOF model goed ingevuld zijn. In hoofdstuk 7 wordt een integraal voorstel uitgewerkt hoe dit onderzoek- en ontwikkelprogramma ingevuld kan worden, zodat de ontwikkeling van beeldtechnologie daadwerkelijk leidt tot bruikbare diensten. Tabel 10. Inschatting van de operationele kosten voor de dienst “YouTube Scannen”. Aantal Eenheid 42 Kosten Rekencapaciteit (cores) 180 € 20 € 3600 Opslag (TB) 9 € 10 € 90 Bandbreedte (Mbps) 900 € 2 € 1800 Beheer (FTE) 1 € 5000 € 5000 Totaal per maand € 10490 42 Zie sectie 2.5 Financiële aspecten
  • 43. TNO-rapport | 43 / 55 4.4.2 Operationele kosten Naast de investering in het onderzoek- en ontwikkelprogramma zijn de operationele kosten belangrijk in de besluitvorming om een dergelijke dienst op te zetten. Deze kosten worden afgeleid uit de infrastructuur, zoals Tabel 10 laat zien. 4.5 Conclusies Op basis van de dienst “YouTube Scannen” worden de volgende conclusies getrokken:  De dienstinventarisatie heeft de behoefte expliciet gemaakt aan een ICT dienst die de nieuwste videos van YouTube scant op ongewenst materiaal en is als zodanig letterlijk door een stakeholder benoemd.  De technologische mogelijkheden zijn geanalyseerd aan de hand van state of the art, een experiment met OpenCV en een architectuur. De state of the art analyse maakt duidelijk dat verschillende dienstcomponenten mogelijkheden bieden. Uit het kleinschalige experiment blijkt dat dat OpenCV bruikbaar is en invariant voor compressie-effecten. Tenslotte levert de architectuur als belangrijkste onderzoeksvragen op:  Hoe kan 100% van de nieuwste UIDs verzameld worden?  Met welke betrouwbaarheid kan een snelle test worden uitgevoerd?  Op welke wijze kunnen de volledige video’s worden gedownload?  De organisatorische verkenning leidt tot aanbeveling om samenwerking met Google te onderzoeken, voornamelijk in het kader van YouTube zelf. Daarnaast wordt duidelijk dat een stevige infrastructuur nodig is op basis van de specificatie van de benodigde infrastructuur.  De financiële analyse maakt inzichtelijk dat de operationele kosten voor deze dienst in de orde van € 10.000 per maand zijn. Dit zijn geen onoverkomelijke kosten voor de Nederlandse overheid, terwijl dit voor een individuele veiligheidsdienst een stuk gecompliceerder ligt. Voordat deze fase bereikt kan worden, moet de investering door middel van het ontwikkel- en onderzoekprogramma uitgevoerd en afgerond zijn.
  • 44. TNO-rapport | 44 / 55 5 Trends spotten op Internet Internet bestaat uit een groot aantal weinig gestructureerde websites. Bijvoorbeeld Google indexeert een groot aantal websites en maakt deze beschikbaar om erin te zoeken. Zo hebben zij een dienst die vergelijkbare afbeeldingen kan zoeken. Een vraag die niet beantwoord wordt, is of er bepaalde trends en ontwikkelingen te vinden zijn in het gepubliceerde beeldmateriaal. Op Twitter is deze informatie beschikbaar als “trending topics”. Naar deze informatie wordt veel gerefereerd om aan te geven wat de gebruikers bezig houdt. Dit hoofdstuk presenteert het onderzoek om voor beeldmateriaal op internet “trending objecten” te herkennen. 5.1 Service Meer dan 10% van het beeldmateriaal op internet bevat een beeldmerk 43 . Beeldmerken zijn te leren om ze vervolgens in nieuwe afbeeldingen te herkennen. In de vorige cases is aangetoond dat het mogelijk is om actief op zoek te gaan naar bepaalde beeldmerken in een database en dat het systeem kan signaleren als een beeldmerk dat zojuist is geüpload wordt herkent. In beide voorbeelden gaat het om vooraf gedefinieerde beeldmerken, waarvan al duidelijk is dat ze een relatie hebben met veiligheidsdiensten. De vraag is hoe dergelijke beeldmerken gevonden kunnen worden als ze nog niet bekend zijn. Vanwege de grote hoeveelheid afbeeldingen op internet is het onmogelijk om op basis van onbekende beeldmerken geautomatiseerd in de gaten te houden welke afbeelding een verdacht beeldmerk bevat en op welke website deze zich bevindt. Toch is het interessant om bij te houden wat er zoal aan beeldmerken voorbij komt, hierbij is het praktisch niet haalbaar om te bekijken welke beeldmerken er in iedere individuele afbeelding zijn gevonden. In plaats daarvan presenteert dit hoofdstuk een dienst om uit te vinden welke trends je kunt ontdekken in beeldmerken en combinaties van beeldmerken. Figuur 32 presenteert schematisch hoe veiligheidsdiensten per uur kunnen bekijken welke beeldmerken trending zijn en om welke afbeeldingen het gaat. Bijvoorbeeld in de vorm van een Object Cloud. Als hier een relevante trend tussen blijkt te zitten, kan deze informatie als startpunt gebruikt worden om bijvoorbeeld de bronafbeeldingen te bekijken. De aanpak voor het achterhalen van trends in afbeeldingen hangt af van de bronnen (databases met nieuwe afbeeldingen) die worden geanalyseerd. Dit kan op zeer grote schaal (Google Images) of op kleinere schaal door meerdere databases aan elkaar te koppelen (denk aan: de verschillende foto diensten van Twitter, Fotoalbum diensten als Flickr of Picasa, en afbeeldingen op sociale media als Facebook en Hyves). Een grote schaal heeft het voordeel dat er veel afbeeldingen in de database staan, maar het nadeel is dat het tijd kost voordat alle afbeeldingen geïndexeerd zijn. Bij een kleine schaal is dit precies andersom. 43 Rapport: FlashReader - Tekstextractie uit Flashwebsites en beeldmateriaal van het internet; 2011.
  • 45. TNO-rapport | 45 / 55 Figuur 32. Schematische presentatie van de dienst “Trends spotten op Internet”. Uitdaging en toegevoegde waarde Om deze dienst te realiseren moet de volgende uitdaging overwonnen worden: Hoe kan beeldmerktechnologie trends herkennen op basis van recent gepubliceerd beeldmateriaal? Deze dienst moet voldoen aan de volgende eisen:  Formaat-agnostisch; alle afbeeldingen afkomstig van het internet moeten verwerkt kunnen worden.  Snel; Ieder uur moeten de laatste trends gepresenteerd worden  Verifieerbaar; er moet achterhaald kunnen worden op basis van welke afbeeldingen een bepaalde trend ontstaat. Resultaat van deze dienst is dat de technologie pro-actief bepaalde ontwikkelingen in kaart brengt, zodat ontwikkelingen sneller gespot kunnen worden en tijdig gereageerd kan worden. We hebben geen voorbeelden van concrete interesse van marktpartijen voor deze dienst. 5.2 Technologie De technologie wordt geïnventariseerd in drie stappen: state of the art, experimenten en architectuur. Internet tijd # afbeeldingen per dag Model nieuw Model normaal Onder- scheidende Objecten extraheren Eindgebruikers
  • 46. TNO-rapport | 46 / 55 5.2.1 State of the Art Web Voyager Het WebVoyager project is onderdeel van het Programma Aanpak Cybercrime (PAC). Het onderzoekt technologie om data van het internet te verzamelen voor de overheid, waarin verschillende diensten veilig kunnen zoeken en analyses kunnen maken. Om dit te doen wordt gebruik gemaakt van Big data technologie zoals: Hadoop, HBase, Nutch en ElasticSearch/Solr. Het huidige cluster bestaat uit 33 nodes, 0.4 PetaByte, 396 cores en 1.6 TB RAM. Figuur 33. Voorbeeld van een analyse op het WebVoyager platform: onderzoek naar wapenhandel in de omgeving van Utrecht. Het WebVoyager project heeft eind 2012 enkele miljarden webpagina’s geïndexeerd. Op basis van deze dataset worden verschillende analyses gemaakt, zoals Figuur 33 laat zien. Daarbij worden per dag zo’n 5 miljoen afbeeldingen gedownload. Kortom, het WebVoyager project biedt een geschikte basis voor het herkennen van trending objecten in beeldmateriaal. TinEye 44 Deze dienst biedt de mogelijkheid om te zoeken met een afbeelding als zoekvraag, vandaar de titel: Reverse image search. Deze dienst is gebaseerd op beeldmerktechnologie en past deze op grote schaal toe: ruim 2.2113 miljard afbeeldingen doorzocht in 2,495 seconde voor een YouTube logo (november 2012). Figuur 34 presenteert een aantal resultaten naar aanleiding van het zoeken op basis van het YouTube logo. Dit voorbeeld laat zien dat TinEye gebruik maakt 44 TinEye Reverse Image Search; http://www.tineye.com/
  • 47. TNO-rapport | 47 / 55 van beeldmerktechnologie en in ieder geval niet alleen fingerprinting technologie. TinEye technologie is krachtig en snel, maar een nadeel van deze oplossing is dat een gebruiker de database niet kan aanpassen. Dit is een nadeel, omdat de database van TinEye niet volledig is en zeker niet alle relevante afbeeldingen bevat. Figuur 34. Voorbeeld van zoekresultaten uit TinEye, die duidelijk maken dat TinEye is gebaseerd op beeldmerktechnologie. Kortom, TinEye laat zien dat het mogelijk is snel grote hoeveelheden afbeeldingen doorzoekbaar te maken op basis van een afbeelding als input. Dit mechanisme is een basiscomponent in het zoeken naar trends. TinEye test op verkleiningen van afbeeldingen Om inzicht te krijgen in de kwaliteit van de TinEye technologie is een experiment uitgevoerd. Voor een 11 afbeeldingen is de gevoeligheid voor het schalen van de afbeelding onderzocht. Dit is als volgt aangepakt. Iedere afbeelding is in stappen van 10% verkleind ten opzichte van de originele grote en vervolgens is vastgelegd welk percentage van de originele zoekresultaten overblijven. Figuur 35 presenteert de relatie voor de verschillende afbeeldingen. Figuur 35. Relatie tussen de verkleining van een afbeelding en het percentage zoekresultaten ten opzichte van het originele aantal. Deze analyse maakt duidelijk dat de beeldmerktechnologie wel schaal afhankelijk is, maar voor een forse range aan schalen nog behoorlijke resultaten laat zien. Dit is logisch, want de beeldkenmerken moeten wel voldoende onderscheidend zijn om aanleiding te geven voor een match. Hoe kleiner de afbeeldingen worden, des te minder onderscheidend worden de beeldkenmerken. Er zijn afbeeldingen die hoger scoren dan 100%. Dit wordt veroorzaakt doordat het verkleinen van de afbeelding, Zoekvraag Selectie uit de zoekresultaten 0,00% 20,00% 40,00% 60,00% 80,00% 100,00% 120,00% 100 90 80 70 60 50 40 30 20 10 Al jazeera Logo Amerikaanse vlag Apple Logo Esher Glazen Bol Explosie HBO Logo Mona Lisa Nachtwacht Tiananmen Square UEFA Champions League Logo Windows Logo
  • 48. TNO-rapport | 48 / 55 het beeld “vergelijkbaarder” maakt met betrekking tot de andere afbeeldingen in de database. Kortom, voor het spotten van trends zullen alleen die objecten gevonden worden met voldoende onderscheidende beeldkenmerken. Onderscheidende objecten: What makes Paris? 45 Dit onderzoek is gericht op een methode om voor iedere stad de typische beeldkenmerken te extraheren. Belangrijk daarbij is dat deze kenmerken door mensen ook te herkennen en te omschrijven zijn. De technologie clustert over verschillende afbeeldingen de verschillende beeldkenmerken. Kenmerken die “dichtbij” elkaar liggen zijn blijkbaar belangrijker. Als die kenmerken voor alle steden goed scoren, dan zijn het kenmerken voor het concept “stad” anders kunnen het kenmerken betreffen die onderscheidend zijn voor een bepaalde stad, zoals Parijs. Door middel van een iteratief proces wordt vastgesteld welke kenmerken daadwerkelijk onderscheidend zijn. Welke kenmerken uiteindelijk geselecteerd worden is afhankelijk van de aangeboden verzamelingen afbeeldingen. Figuur 36 presenteert een aantal beeldkenmerken die typisch zijn voor de stad Parijs. Figuur 36. Voorbeelden van objecten die onderscheidend zijn voor de stad Parijs. Kortom, als deze technologie ingezet wordt door afbeeldingen die verkregen zijn in een bepaalde periode te vergelijken met afbeeldingen uit een voorgaande periode, dan ontstaat er een beeld van objecten die onderscheidend zijn voor die periode: trending objects. 5.2.2 Experiment Op basis van de “What makes Paris?” software 46 is geprobeerd om trending objecten te vinden in eigen test afbeeldingen. Het experiment heeft niet tot gewenste uitkomsten geleid. Dit werd veroorzaakt doordat de open source software 45 C. Doersch, S. Singhand, A. Gupta, J. Sivic and A. A. Efros, "What makes Paris look like Paris?," ACM Trans. Graph., pp. 101:1-101-9, jul 2012. 46 http://graphics.cs.cmu.edu/projects/whatMakesParis/
  • 49. TNO-rapport | 49 / 55 niet voldoende volwassen was om te testen. Er kwamen verschilllende problemen aan het licht zoals memory leaks, extreem lange rekentijden en versieproblemen. Deze technologie vereist dus meer onderzoek om praktisch bruikbaar gemaakt te worden. Een belangrijke vraag is de schaalbaarheid, want de huidige implementatie vergelijkt alle afbeeldingen met elkaar. Dat is geen probleem voor een kleine set, maar bij grote aantallen afbeeldingen loopt de rekentijd vrij snel uit de hand. 5.2.3 Architectuur Figuur 37 presenteert de architectuur van de trending object herkenner. Deze architectuur heeft kenmerken van de aanpak “What makes Paris”, maar dan met gebruik van een database om snelheidswinst te behalen. Daardoor bestaat de architectuur uit vier componenten:  Beeldkenmerken extraheren; Voor een tweetal batches met afbeeldingen, nieuw en normaal, worden alle beeldkenmerken geëxtraheerd.  Index beeldkenmerken; Om te komen tot een snelle implementatie worden alle beeldkenmerken opgeslagen in een index.  Onderscheidende beeldkenmerken selecteren; Vanuit de opgebouwde index kunnen vervolgens alle onderscheidende beeldkenmerken geselecteerd worden. Dit zijn kenmerken die significant vaker voorkomen in de nieuwe set ten opzichte van de normale set.  Sub-afbeeldingen selecteren; In de omgeving van de onderscheidende kenmerken in de originele afbeeldingen worden die sub-afbeeldingen geselecteerd die overeenkomen met de onderscheidende kenmerken. Deze sub-afbeeldingen worden ook wel uitsneden of patches genoemd. Figuur 37. Architectuur voor de herkenning van trending objecten. Iedere component brengt specifieke onderzoeksvragen met zich mee: 1 Beeldkenmerken extraheren 1.1 Wat zijn optimale beeldkenmerken? SIFT, SURF of een geoptimaliseerde variant? 2 Index beeldkenmerken 2.1 Kan dezelfde index gebruikt worden als voor de locatie herkenner? 2.2 Kunnen de beeldkenmerken voldoende snel geïndexeerd worden? 3 Onderscheidende beeldkenmerken selecteren Beeldkenmerken extraheren Batch nieuwe afbeeldingen Index beeld- kenmerkenBatch “normale” afbeeldingen Onderscheidende beeldkenmerken selecteren Sub-afbeeldingen selecteren Beeldkenmerken extraheren Trending objecten
  • 50. TNO-rapport | 50 / 55 3.1 Welke eisen worden opgelegd aan de database om onderscheidende beeldkenmerken te selecteren? 3.2 Wat is een goede definitie van onderscheidende beeldkenmerken? 4 Sub-afbeeldingen selecteren 4.1 Hoeveel beeldkenmerken moeten gezamenlijk voorkomen in meerdere afbeeldingen om een onderscheidend object te selecteren? Bepalend hierbij is dat het gevonden object enige betekenis heeft. 4.2 Zijn de gevonden objecten daadwerkelijk relevant voor de veiligheidsdiensten? 5.3 Organisatie De organisatie van deze ICT dienst betreft voornamelijk samenwerking en een stevige infrastructuur voor de levering van de dienst. 5.3.1 Samenwerking Een interessante partij om een samenwerking mee te onderzoeken is het WebVoyager project, omdat zij al op grote schaal voor het OOV domein internet pagina’s en bijbehorende afbeeldingen downloaden. Daarnaast zal op expertise de samenwerking met bijvoorbeeld EUvision, de Universiteit van Amsterdam (Intelligent Systems Lab Amsterdam) of TNO (goep Intelligent Imaging en Media en Netwerk Services) gezocht moeten worden om de benoemde onderzoeksvragen die ten grondslag liggen aan deze dienst te beantwoorden. 5.3.2 Infrastructuur Uitgaande van de voorgestelde architectuur wordt de infrastructuur gespecificeerd zoals Tabel 11 laat zien. Deze specificatie wordt vervolgens toegelicht. Tabel 11. Specificatie van de benodigde infrastructuur voor de dienst “Trends spotten op Internet” Trending objecten herkennen Rekenkracht (cores, rekenunits) 75 Opslag (TB, terrabytes) 400 Bandbreedte (Mbps, megabit per seconde) 50 Rekenkracht Beeldkenmerken extraheren en indexeren  Batch “nieuw” bestaat uit 5 miljoen afbeeldingen per dag (zie WebVoyager; sectie 5.2.1),  1 seconde rekentijd per afbeelding plus indexeren  Bijna 60 afbeeldingen worden per seconde binnen gehaald  Dus zijn 60 cores nodig om alle beeldkenmerken te berekenen  De afbeeldingen uit de batch “normaal” zijn op voorgaande dagen geïndexeerd en hoeven dus niet nogmaals uitgerekend te worden. Onderscheidende beeldkenmerken selecteren
  • 51. TNO-rapport | 51 / 55  Hoe deze operatie precies uitgevoerd moet worden is nog een schatting met grote onzekerheid. De complexiteit van het sorteren van alle beeldkenmerken uit 5 miljoen afbeeldingen met 1000 kenmerken per afbeelding wordt geschat op O(n*log(n)).  Dit zijn ruim 50 miljard vergelijkingen  Uitgaande van 1 µs per vergelijking, kost dat zo’n 50.000 seconde rekentijd per run.  Gegeven dat de trending objecten ieder uur (3600 seconde) berekend moeten worden, zijn hier ongeveer 14 cores voor nodig. Sub-afbeeldingen selecteren  Het uitknippen van de verschillende afbeeldingen komt neer op ongeveer 1 seconde per sub-afbeelding. Gegeven dat er per uur ongeveer 1000 trending objecten worden selecteert, kan dit proces uitgevoerd worden door 1 core. In totaal zijn er zo’n 75 (60 + 14 + 1) cores nodig voor deze dienst. Opslag Afbeeldingen op internet zijn niet al te groot, uitgaande van 100kB per afbeelding, is er per dag 0,5TB nodig per dag. Er vanuit gaande dat een afbeelding een jaar wordt opgeslagen is een opslag capaciteit nodig van bijna 200TB. Gegeven dat de index een vergelijkbare capaciteit vereist, komt de opslag neer op ongeveer 400TB. Bandbreedte Om per dag 0,5TB te ontvangen is een bandbreedte van ongeveer 50Mbps vereist. 5.4 Financiën 5.4.1 Investering Evenals voor de twee andere diensten kan deze alleen succesvol worden uitgerold als alle vier de domeinen uit het STOF model goed ingevuld zijn. In hoofdstuk 7 wordt een integraal voorstel uitgewerkt hoe dit onderzoek- en ontwikkelprogramma ingevuld kan worden, zodat de ontwikkeling van beeldtechnologie daadwerkelijk leidt tot bruikbare diensten. 5.4.2 Operationele kosten De operationele kosten worden afgeleid uit de infrastructuur, zie Tabel 12. Tabel 12. Inschatting van de operationele kosten voor de dienst “Trends spotten op Internet”. Aantal Eenheid 47 Kosten Rekencapaciteit (cores) 75 € 20 € 1500 Opslag (TB) 400 € 10 € 4000 Bandbreedte (Mbps) 50 € 1 € 50 Beheer (FTE) 1 € 5000 € 5000 Totaal € 10550 47 Zie sectie 2.5 Financiële aspecten
  • 52. TNO-rapport | 52 / 55 5.5 Conclusies Op basis van de analyse van de dienst “Trends spotten op Internet” worden de volgende conclusies getrokken:  De dienstinventarisatie heeft de behoefte aan een dergelijke dienst nog niet expliciet gemaakt voor beeldmateriaal, mogelijkerwijs omdat het een zeer nieuwe dienst betreft. Wij zien bijvoorbeeld mogelijkheden in de analyse van links naar afbeeldingen die getwitterd worden.  De technologische mogelijkheden zijn geanalyseerd aan de hand van state of the art, een experiment met OpenCV en een architectuur. Deze analyse maakt een aantal zaken duidelijk. De infrastructuur is beschikbaar, zoals blijkt uit het WebVoyager project. Ook zijn er verschillende wetenschappelijke aanknopingspunten. Tests in de praktijk laten echter zien dat het realiseren van deze dienst een stuk complexer is dan geldt voor de andere twee diensten. Er is waarschijnlijk meer wetenschappelijk onderzoek vereist. De belangrijkste vragen die beantwoord moeten worden zijn:  Wat zijn optimale beeldkenmerken voor deze dienst? SIFT, SURF of een geoptimaliseerde variant?  Wat is een goede definitie van onderscheidende beeldkenmerken?  De organisatorische verkenning leidt tot de aanbeveling de samenwerking met WebVoyager te onderzoeken in het kader van de infrastructuur. Ook zal er samenwerking met enkele wetenschappelijke partners gezocht moeten worden voor de vereiste technologische innovatie.  De financiële analyse maakt inzichtelijk dat de operationele kosten voor deze dienst iets hoger dan € 10.000 per maand zijn. Dit zijn geen onoverkomelijke kosten voor de Nederlandse overheid, terwijl dit voor een individuele veiligheidsdienst een stuk gecompliceerder ligt. Voordat deze fase bereikt kan worden, moet de investering door middel van het ontwikkel- en onderzoekprogramma uitgevoerd en afgerond zijn.
  • 53. TNO-rapport | 53 / 55 6 Conclusies en Aanbevelingen Beeldmateriaal op het internet heeft een belangrijke rol in de veiligheidsketen. Door een toenemend aantal mobiele camera’s in combinatie met een intensiever sociaal media gebruik ontstaat een ad-hoc camera netwerk. Dit versterkt de potentie van beeldmateriaal voor de veiligheidsketen. Door het open karakter van de sociale media kan iedereen het materiaal vinden en interpreteren: journalistiek, burgers of de diensten zelf. Automatische methoden zullen essentieel zijn om de potentie van deze grote hoeveelheid beeldmateriaal te benutten. Nadeel van ICT diensten die beeldmateriaal ontsluiten is de complexiteit, die wordt veroorzaakt door: 1 Deze systemen moeten grote aantallen video- of fotobestanden verwerken. Het verwerken van deze bestanden is data intensief in vergelijking met bijvoorbeeld het verwerken van tekst. Dit vereist een grootschalige IT infrastructuur. 2 Om grote aantallen video’s en foto’s snel te doorzoeken moeten zij op een efficiënte manier geïndexeerd worden. Dit vereist expertise op het gebied van databases en snelle zoekalgoritmes. 3 De algoritmiek die het beeldmateriaal analyseert en relevante beeldkenmerken extraheert is complex. Veelal liggen er vele jaren wetenschappelijk onderzoek ten grondslag aan verschillende oplossingen die we uit de praktijk kennen. Expertise op het gebied van beeldverwerking en patroonherkenning is vereist om de algoritmiek goed af te stemmen op de toepassing. Dit zijn drie verschillende technische specialisaties die bijeen gebracht moeten worden. Kortom, de ontwikkeling van dit type ICT diensten vereist in het technologisch domein al een multidisciplinair ontwikkel- en onderzoeksteam. Deze multidisciplinariteit wordt alleen maar groter als de service, organisatie en het financiële domein op het juiste niveau gebracht moeten worden. Dit rapport heeft voor drie onderscheidende diensten inzichtelijk gemaakt hoe deze technisch, organisatorisch en financieel gerealiseerd moeten worden. Het betreft de diensten “Locatieherkenning op Twitter”, “YouTube Scannen” en “Trends spotten op Internet”. Alle bevindingen tezamen genomen zijn de belangrijkste conclusies:  Service; de keuze om deze drie diensten te onderzoeken is gebaseerd op uitspraken van verschillende stakeholders, maar prioriteit met betrekking tot het juiste dienstenportfolio moet gevonden worden. Het is belangrijk te realiseren dat de onderzochte diensten alleen beeldmateriaal van het internet verwerken en dus onderdeel zijn van een totaal oplossing, waar ook tekst van het internet wordt verwerkt.  Technologie; Op basis van de open source software OpenCV is de herkenningsalgoritmiek geïmplementeerd. Voor de diensten “Locatieherkenning op Twitter” en “YouTube Scannen” biedt OpenCV bruikbare oplossingen. De dienst “Trends spotten op Internet” vraagt om meer onderzoek.  Organisatie; In verband met de complexiteit van dit type ICT diensten moeten deze centraal ontwikkeld en geleverd worden aan andere overheidsdiensten. Het iRN lijkt een geschikte kandidaat. De samenwerking met potentiële
  • 54. TNO-rapport | 54 / 55 technologie- en dataleveranciers moet worden onderzocht, in het bijzonder potentiële samenwerking met Google (ivm Streetview, YouTube, Search, Images).  Financiën; De geschatte operationele kosten van de onderzochte diensten zijn voor de Nederlandse overheid laag (~€ 10.000 per maand 48 per dienst). Dit geeft een ander beeld dan wanneer dit bedrag een orde groter was geweest. De kosten betreffen voor 50% personeelskosten. Er is zowel een vanuit organisatorische als vanuit financiële overwegingen een aanbeveling om de uitvoering centraal te beheren. Dat biedt wellicht ook mogelijkheden tot het combineren van verschillende ICT diensten, gebaseerd op dezelfde data en technologie. Op basis van deze analyse kan de centrale vraag beantwoord worden: Welke aanpak moet gekozen worden om praktisch bruikbare diensten te realiseren die automatisch beeldmateriaal verwerken? Dit onderwerp vraagt een multidisciplinaire aanpak, waarbij de vier domeinen (service, technologie, organisatie en financiën) stapsgewijs ontwikkeld moeten worden. De logische vervolgstappen op deze proof of principle zijn: proof of concept ontwikkelen, pilot uitvoeren en dienstenportfolio operationaliseren. Per stap worden onzekerheden weggenomen en komt de operationele dienst dichterbij. Deze aanpak is in meer detail uitgewerkt in hoofdstuk 7. 48 Onder aanname van licentievrije technologie en data.
  • 55. TNO-rapport | 55 / 55 7 Programma "Beeldtechnologie naar de Praktijk" xxxxxxxxxxxx