LabelMe
LabelMe är ett projekt skapat av MIT Computer Science and Artificial Intelligence Laboratory ( CSAIL) som tillhandahåller en datauppsättning av digitala bilder med anteckningar . Datauppsättningen är dynamisk, gratis att använda och öppen för offentliga bidrag. Den mest tillämpliga användningen av LabelMe är i forskning om datorseende . Den 31 oktober 2010 har LabelMe 187 240 bilder, 62 197 kommenterade bilder och 658 992 märkta objekt.
Motivering
Motivationen bakom att skapa LabelMe kommer från historien om allmänt tillgänglig data för forskare inom datorseende. De flesta tillgängliga data skräddarsyddes för en specifik forskargrupps problem och gjorde att nya forskare måste samla in ytterligare data för att lösa sina egna problem. LabelMe skapades för att lösa flera vanliga brister i tillgänglig data. Följande är en lista över egenskaper som skiljer LabelMe från tidigare arbeten.
- Designad för igenkänning av en klass av objekt istället för enstaka instanser av ett objekt. Till exempel kan en traditionell datauppsättning ha innehållit bilder av hundar, var och en av samma storlek och orientering. Däremot innehåller LabelMe bilder av hundar i flera vinklar, storlekar och orienteringar.
- Designad för att känna igen objekt inbäddade i godtyckliga scener istället för bilder som beskärs , normaliseras och/eller storleksändras för att visa ett enda objekt.
- Komplex anteckning: Istället för att märka en hel bild (vilket också begränsar varje bild till att innehålla ett enda objekt), tillåter LabelMe anteckning av flera objekt i en bild genom att ange en polygonavgränsningsruta som innehåller objektet.
- Innehåller ett stort antal objektklasser och gör det enkelt att skapa nya klasser.
- Olika bilder: LabelMe innehåller bilder från många olika scener.
- Tillhandahåller icke- upphovsrättsskyddade bilder och tillåter offentliga tillägg till kommentarerna. Detta skapar en fri miljö.
Anteckningsverktyg
LabelMe-anteckningsverktyget är ett sätt för användare att bidra till projektet. Verktyget kan nås anonymt eller genom att logga in på ett gratis konto. För att komma åt verktyget måste användare ha en kompatibel webbläsare med JavaScript- stöd. När verktyget är laddat väljer det en slumpmässig bild från LabelMe-datauppsättningen och visar den på skärmen. Om bilden redan har objektetiketter kopplade till sig, kommer de att läggas ovanpå bilden i polygonformat. Varje distinkt objektetikett visas i en annan färg.
Om bilden inte är helt märkt kan användaren använda musen för att rita en polygon som innehåller ett objekt i bilden. Till exempel, i den intilliggande bilden, om en person stod framför byggnaden, kunde användaren klicka på en punkt på kanten av personen och fortsätta klicka längs ytterkanten tills han återvände till startpunkten. När polygonen är stängd dyker en bubbla upp på skärmen som låter användaren ange en etikett för objektet. Användaren kan välja vilken etikett som helst som användaren tycker bäst beskriver objektet. Om användaren inte håller med om bildens tidigare märkning, kan användaren klicka på konturpolygonen för ett objekt och antingen ta bort polygonen helt eller redigera textetiketten för att ge den ett nytt namn.
Så snart ändringar görs i bilden av användaren, sparas de och är öppet tillgängliga för alla att ladda ner från LabelMe-dataset. På detta sätt förändras data alltid på grund av bidrag från gemenskapen av användare som använder verktyget. När användaren är klar med en bild Visa mig en annan bild klickas på och en annan slumpmässig bild kommer att väljas att visa för användaren.
Problem med data
LabelMe-datauppsättningen har några problem. Vissa är inneboende i data, som att objekten i bilderna inte är jämnt fördelade med avseende på storlek och bildplacering. Detta beror på att bilderna i första hand tas av människor som tenderar att fokusera kameran på intressanta objekt i en scen. Att beskära och skala om bilderna slumpmässigt kan dock simulera en enhetlig fördelning. Andra problem orsakas av mängden frihet som ges till användarna av anteckningsverktyget. Några problem som uppstår är:
- Användaren kan välja vilka objekt i scenen som ska skisseras. Ska en tilltäppt person märkas? Ska en tilltäppt del av ett objekt inkluderas när objektet skisseras? Ska himlen märkas?
- Användaren måste själv beskriva formen på objektet genom att markera en polygon. Bör fingrar på en hand på en person beskrivas med detaljer? Hur mycket precision måste man använda när man ritar ut föremål?
- Användaren väljer vilken text som ska skrivas in som etikett för objektet. Ska etiketten vara person , man eller fotgängare ?
Skaparna av LabelMe beslutade att överlåta dessa beslut till kommentatorn. Anledningen till detta är att de tror att människor tenderar att kommentera bilderna enligt vad de tror är den naturliga märkningen av bilderna. Detta ger också viss variation i data, vilket kan hjälpa forskare att ställa in sina algoritmer för att ta hänsyn till denna variabilitet.
Utöka data
Använder WordNet
Eftersom textetiketterna för objekt som tillhandahålls i LabelMe kommer från användarinmatning, finns det mycket variation i etiketterna som används (som beskrivits ovan). På grund av detta kan analys av objekt vara svårt. Till exempel kan en bild av en hund märkas som hund , hund , hund , hund eller djur . Idealiskt, när du använder data, bör objektklassen hund på abstrakt nivå innehålla alla dessa textetiketter.
WordNet är en databas med ord organiserade på ett strukturellt sätt. Det gör det möjligt att tilldela ett ord till en kategori, eller på WordNet-språk: en mening. Sense-tilldelning är inte lätt att göra automatiskt. När författarna till LabelMe provade automatisk sinnestilldelning fann de att det var benäget att få en hög felfrekvens, så istället tilldelade de ord till sinnen manuellt. Till en början kan detta verka som en skrämmande uppgift eftersom nya etiketter läggs till i LabelMe-projektet kontinuerligt. Till höger finns en graf som jämför tillväxten av polygoner med tillväxten av ord (beskrivningar). Som du kan se är tillväxten av ord liten jämfört med den kontinuerliga tillväxten av polygoner, och är därför lätt nog att hålla sig uppdaterad manuellt av LabelMe-teamet.
När WordNet-tilldelningen är klar är sökningar i LabelMe-databasen mycket effektivare. Till exempel kan en sökning efter djur visa bilder på hundar , katter och ormar . Men eftersom uppdraget gjordes manuellt, skulle en bild av en datormus märkt som mus inte dyka upp i en sökning efter djur . Dessutom , om objekt är märkta med mer komplexa termer som hundpromenad , tillåter WordNet fortfarande att hundsökningen returnerar dessa objekt som resultat. WordNet gör LabelMe-databasen mycket mer användbar.
Objekt-del hierarki
Att ha en stor datauppsättning av objekt där överlappning är tillåten ger tillräckligt med data för att försöka kategorisera objekt som en del av ett annat objekt. Till exempel är de flesta etiketter som tilldelas hjul förmodligen en del av objekt som tilldelats andra etiketter som bil eller cykel . Dessa kallas deletiketter . För att avgöra om etikett P är en deletikett för etikett O :
- Låt beteckna uppsättningen bilder som innehåller ett objekt (t.ex. bil)
- Låt beteckna uppsättningen bilder som innehåller en del (t.ex. hjul)
- Låt överlappspoängen mellan objekt O och del P , definieras som förhållandet mellan skärningsytan till arean av delpolygonen. (t.ex. )
- Låt beteckna bilder där objekt- och delpolygoner har där är något tröskelvärde. Författarna till LabelMe använder
- Objektdelpoängen för en kandidatetikett är där och är antalet bilder i respektive och är en koncentrationsparameter. Författarna till LabelMe använder .
Denna algoritm tillåter automatisk klassificering av delar av ett objekt när delobjekten ofta finns i det yttre objektet.
Ordning av objektdjup
Ett annat fall av objektöverlappning är när ett objekt faktiskt ligger ovanpå det andra. Till exempel kan en bild innehålla en person som står framför en byggnad. Personen är inte en deletikett enligt ovan eftersom personen inte är en del av byggnaden. Istället är de två separata objekt som råkar överlappa varandra. För att automatiskt avgöra vilket objekt som är förgrunden och vilket som är bakgrunden, föreslår författarna av LabelMe flera alternativ:
- Om ett objekt är helt inneslutet i ett annat objekt, måste det inre objektet vara i förgrunden. Annars skulle det inte synas på bilden. Det enda undantaget är med genomskinliga eller genomskinliga föremål, men dessa förekommer sällan.
- Ett av objekten skulle kunna märkas som något som inte kan vara i förgrunden. Exempel är himmel , mark eller väg .
- Objektet med fler polygonpunkter innanför det skärande området är troligen förgrunden. Författarna testade denna hypotes och fann att den var mycket korrekt.
- Histogram skärningspunkt kan användas. För att göra detta jämförs ett färghistogram i de skärande områdena med färghistogrammet för de två objekten. Objektet med det närmare färghistogrammet tilldelas som förgrund. Denna metod är mindre exakt än att räkna polygonpunkterna.
Matlab verktygslåda
LabelMe-projektet tillhandahåller en uppsättning verktyg för att använda LabelMe-dataset från Matlab. Eftersom forskning ofta görs i Matlab möjliggör detta integration av datasetet med befintliga verktyg inom datorseende. Hela datasetet kan laddas ner och användas offline, eller så tillåter verktygslådan dynamisk nedladdning av innehåll på begäran.
Se även
- Lista över datauppsättningar för forskning om maskininlärning
- MNIST-databas
- Caltech 101
- Lista över manuella bildanteckningsverktyg
- VoTT
- Bibliografi
- Russell, Bryan C.; Torralba, Antonio; Murphy, Kevin P.; Freeman, William T. (2008). "Label Me : A Databas and Web-based Tool for Image Annotation" (PDF) . International Journal of Computer Vision . 77 (1–3): 157–173. doi : 10.1007/s11263-007-0090-8 . S2CID 1900911 .
- Swain, Michael J.; Ballard, Dana H. (1991). "Färgindexering". International Journal of Computer Vision . 7 :11–32. doi : 10.1007/BF00130487 . S2CID 8167136 .
externa länkar
- http://labelme.csail.mit.edu/ - LabelMe - Det öppna annoteringsverktyget