Flickr(フリッカー)は昔からある写真共有サイト。Yahoo! に買収され,その後 SmugMug に買収された。ImageNet の画像の半分くらいは Flickr から得ている。
Flickr の URL はここに説明されているようにいろいろなタイプがある。
例えば ImageNet で Persian cat を検索して最初に出てくる猫は https://farm1.static.flickr.com/99/276298625_d7b9a004ec.jpg という URL である。この 276298625 が画像 ID である。画像 ID だけで元ページに行く URL は https://flickr.com/photo.gne?id=276298625 である。
Flickr には https://flic.kr/p/... という短縮 URL もある。これについては manufacturing flic.kr style photo URLs で説明されているように最後の部分は画像 ID の Base58 である。画像 ID の Base58 エンコード・デコードは次の Python コードでできる:
alphabet = "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"
def encode(n):
e = ""
while n != 0:
e = alphabet[n % 58] + e
n //= 58
return e
def decode(e):
n = 0
m = 1
for c in e[::-1]:
n += m * alphabet.find(c)
m *= 58
return n
この仕組みを使えば,画像 ID が 276298625 のページは
print("https://flic.kr/p/" + encode(276298625))
で求められる。https://flic.kr/p/qq6Xp である。
Last modified: