カテゴリー
UIデザイン

laptop.css – 画像をラップトップ化してくれるスタイルシート

laptop.cssは、画像の周りにアスキーアートのラップトップ枠をつけてくれるという単機能のCSSスタイルシートです。オープンソースです。

3種類のサイズのラップトップが用意されています。

どういう時に有用なライブラリなのか、今一つわかりませんが。

縦横比に注意して画像を用意しないといけないみたいですね。そして、画像につけたリンクが無効になってしまった。

(rss フィード経由の方は元ページを開いて見てください)

via Hacker News

カテゴリー
ネットの事件

ランダムなアルファベット4文字x2で、Google画像検索が謎の抽象画を返してくる

グーグル画像検索を乗っ取るサイト?

reddit/whatisthisthing(これは何?)で質問されて話題になった謎の現象がこれ。

グーグル画像検索で”jwsr ljxb”のように、アルファベットで単語になってなさそうなものを2個入れると、出てくる候補が謎の図形画像だらけになります。

どんな4文字でも出るわけではありません。まず辞書にあるような4文字はダメです。その単語に関する画像が出てきます。略語として成立してるものもだめ。子音ばかりを読めないような並びで並べると出やすいように思います。

画像のサイトを開いてみると、どの画像も c0d3.attorney というドメイン上のページにあることがわかります。その内容はというと、

謎の画像二つに、ごく短いプロジェクト紹介、そしてその後ろには長々と、デタラメにも見える読めないテキストが続いています。

難解プログラミング言語 Malbolge を使ったプロジェクト

プロジェクト紹介の内容はこちら

c0d3.attorney は Malbolge, 1998年にベン・オルムステッド氏が作成したパブリックドメインな難解言語, で書かれたプログラムを表示することに特化したプロジェクトです。言語は使うことがほぼできないように設計されています。(しかし)設計上の弱点がこれまでに発見され、使えるプログラムを書くことが可能となりました。これを共有できることは喜ばしいことです

とても短い紹介文で、これ以外には情報がありません。

ページのほとんどを占めるデタラメ風テキストが、そうすると Malbolge 言語のコードだということなのでしょう。

画像もコードも、URLに与えたパラメータに応じて変化しますが、あるページで数えてみると、約5万語、61万文字ありました。

オンラインの Malbolge実行環境(あるんだ…) に最初の一行を食わせてみましたが、エラーとなってしまいました。1行だけ入れても動かないのかもしれません。

ちなみに、サイトにサンプルとしてある Hello, World はこれ

('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=

うん。まったくわからん。

Google は「知らん」と

TheNextWeb が Google にこの現象に関して問い合わせしてくれていますが、これは Google のイースターエッグではないし、同社は c0d3.attorney とは何の関係も無い、という回答が来たそうです。

「一般的な話」として、画像のあるページにある文字で検索したら出るよ、ともコメントにあったということで、ごくごく当たり前のつまらない結論になってしまうのですが、この自動生成っぽい Malbolge 言語のコードの中にアルファベット4文字のセットが大量にでき、その中の2組の4文字をウェブの他のサイトで2つ同時に使ってる他のサイトがほとんど無いために、検索で出てきてしまう、ということでしょうね。

今の時点でも、この謎のサイトを作ったのは誰か、などは判明していません。

純粋なプロジェクトか、意図のあるSEOスパムか?

ドメインの世界では、 .com 以下は、ランダムだろうと意味がなかろうと 4文字のドメイン名はすべて誰かに取得されていることが2013年には報告されています。打ち間違いでもなんでも、4文字.com を入れた人を待ち構えて、広告を見せたりドメインを売りつけたりという商売をしてる人たちがどこかに存在するわけです。

となると、今回のサイトもそういう「迷い込んできた人」を捕まえるために作られた可能性も消し去ることはできません。とはいえ、今のところサイトに来ても、広告があるわけでもなし。単に人が来たからといって得になることなんてあるのかなとも思います。

いろいろな文字列でGoogleから推薦される、と聞くと人によってはたいへん魅力的に感じるかもしれませんが、そのデタラメな文字で迷い込んでくる人が分量としてどれほどのものか、という話もあります。総量としては見つけてやってくる人はそれほど多くないかもしれません。

ですが、今回の件で興味を持った人は、単語になってない日本語の文字の組み合わせを大量に配置するサイトでも作れば、同様の結果を得られたりするかもしれませんね。

via reddit and TheNextWeb

カテゴリー
ネットのサービス

NSFW画像検知APIの優劣比較

NSFW(Not safe for work = 職場閲覧不適)画像、わかりやすい言い方だとエロ画像ですが、画像を渡すとその画像がエロかどうか判定してくれる API というの、結構たくさんあるんですね。

なぜこの種のAPIに需要があるかというと、ユーザー投稿型のwebサービス運営において、広く見せられないような画像を投稿されることが運用の大きな障害となるからでしょうね。悪意のあるユーザーや考えなしのユーザーによって法に触れたりサービスのイメージが悪化するような画像を投稿され、さらにそのことがソーシャルメディアで喧伝されたりすれば、サイトの評判に関わります。

Facebook や twitter のような超大手なら、画像の判定もいくらでも内製できるでしょうが、そうでない小さなサービスでは、多少お金を払ってでも簡易に判定を外部に任せたいところでしょう。

…と、書いていたら、Tumblr が(おそらく Apple に iPhone アプリを禁止された影響で)アダルトな投稿を禁じるという方針転換を発表し、同時に開始したアダルト画像のフィルタリングの誤判定がひどいらしいので、NSFW 判定は多数のエンジニアを抱える大手でも難しい分野なのでしょう。

そんな画像検知のAPI を、Aditya Ananthram さんが、API の検出精度を実験したり、価格を比較したりしてくれています。

調査対象のAPIはなんと11個。このまとまったリストだけでも、取っ掛かりとしてはありがたいですね。

また、セーフ/アウトのアウトの種類もいろいろあるようで、API によっても分類は異なりそうですが、以下のようなカテゴリ分けで判定を試みています。

  • Explicit Nudity (露骨なヌード)
  • Suggestive Nudity (思わせぶりなヌード – 隠すところは隠しているが… みたいなやつ)
  • Porn/sexual act (ポルノ/性行為)
  • Simulated/Animated porn (CGやアニメのポルノ)
  • Gore/Violence (流血/暴力)
  • Safe for Work (職場で問題ない)

実験するにあたって、当然、本物の NSFW 画像が必要となります。ブログ記事自体は必要なところはボカシが入っていて、SFW(safe for work = 職場安全)ですけど、中にGoogle Documents へのリンクがあり、リンク先には今回使用された、正しく分類されたデータが入っています。追試とかしたい方は注意してください。

カテゴリごとに強いAPIはありますが、Google のものがおおむね良い成績を上げたそうで、さすがというところでしょうか。また、Gore/Violence や Safe for Work というカテゴリはどのAPIでも判定は難しいようで、各APIでも誤判定が多かったそうです。このへんは元のテストデータにしても正解かどうか意見がわかれそうですし、「職場で問題ないかどうか」なんて普遍的にわかるものでもないですからね。

擬陽性・偽陰性の多寡を並べたグラフ(Overall Comparison セクション内)や、呼び出し回数に対する価格(Pricing セクション内)などもまとめられているのでこれらを併せて比較することで、予算と精度からどのAPIを調べてみるといいかの手がかりが得られそうです。