Hatena::Groupgive-me-money

fuba needs money

楽してお金をもらえる情報募集中、@fubaとかでご連絡ください。

2014-12-21

tesseract-ocrシリアルコードを大量入力して金をもらおう 17:26 tesseract-ocr でシリアルコードを大量入力して金をもらおう - fuba needs money を含むブックマーク はてなブックマーク - tesseract-ocr でシリアルコードを大量入力して金をもらおう - fuba needs money

漫画を大量に買うとニコニコカドカワ祭りのシリアルコードが大量にもらえるおかげで大金が得られるのですが、一気に登録するのは本当に憂鬱になります。

そこで現代人らしく tesseract-ocr を使うことにしました。tesseract-ocr には今は Google が金を出しているらしいし、きっとすごい性能が出ることでしょう。

% tesseract codes.jpg output

1分ほど待つと結果が出ました。

どうやらこれはいくらなんでも知性のない行動をとっているようなので、人間らしくシリアルコード部分を手で切り抜いて認識させることにしました。-psm 7 オプション=画像が1行の文字列であり、 nobatch digits =数値列であるという制約をつけることで、完全に問題なく結果が出るはずです。

% tesseract "ss 2014-12-21 16.44.23.png" "ss 2014-12-21 16.44.23.png.txt" -psm 7 nobatch digits

一切待たずに結果が出ました。

惜しいですが、1文字でも間違っていれば金を貰うことはできません。そもそもゴミが残っている画像ではゴミのような認識しか行われないということがわかったし、ここまでの作業で30分かかったので、素直に10分間手入力を行い、ついに1500ニコニコポイントを得ることができました。

結論:スクラッチカードを徹底的に削らない者はなにをやってもダメ。

2012-12-14

自分の発言を拡散させない方法 自分の発言を拡散させない方法 - fuba needs money を含むブックマーク はてなブックマーク - 自分の発言を拡散させない方法 - fuba needs money

自分の発言が拡散するとロクなことがないです。発言が拡散すると一時的に有名人になります。よい発言や、自分に責任がない発言であれば、よい有名人になり、とても楽しいです。ですが、発言が犯罪的であれば、実名と職業と顔が結びつけられたりして、生活に困り、路頭に迷い、死ぬことになります。有名人になっても楽しいだけでたいした収入が得られないのであれば、有名にならないのがリスク管理としては正しいことになります。

そこで、ぼくは自分の発言をあんまり拡散させないために、tweet に情報をあまり持たせないことにしています。そのおかげで、結構平和な日常を過ごせていると思います。ですが、そのアプローチは本当に正しいのでしょうか? 何かを見落としており、ある日突然、生活に困り、路頭に迷い、死ぬことにはならないのでしょうか? 調べてみることにしました。

それでは、事例を見てみることにしましょう。hitode909 さんの favstar をルートとしてクロールし、100 人の twitter ユーザの tweet のうち、よく RT されているものをリストにしてみました。

- 
  fav: 7146
  rts: 12000
  text: 【表現技法の分かりやすい例】反復法「読める!読めるぞ!!」倒置法「見せてあげよう、ラピュタの雷を!!」比喩法「見ろ!人がゴミのようだ!!」反語法「最高のショーだと思わんかね!」省略法「目が!目がぁ!!」
  url: http://favstar.fm/users/iClaymore/status/199074806665187328
- 
  fav: 3205
  rts: 11000
  text: 「偏差値75位の進学校では修学旅行の夜でも勉強の話をするのだろうか」というツイートが流れてきたので東大寺学園に通う知人にメールで訊ねてみたら、「そんなわけないだろw隣のクラスの誰が可愛い、とかそんな話してるよww」と返ってきて、何だ普通じゃんと思ったけどよく考えたら東大寺男子校だ
  url: http://favstar.fm/users/iClaymore/status/272985672149774337
- 
  fav: 1867
  rts: 7471
  text: 日本人がtwitterアイコンに顔写真を使わないのは忍者だから、って言うけど、忍の者が素顔を見せるのは「必ず殺す」の意味だからアニメアイコンの人が顔晒してたら死を覚悟した方がいい
  url: http://favstar.fm/users/iClaymore/status/202199558212689923
- 
  fav: 237
  rts: 6485
  text: 【拡散希望】友達がTwitterの影響力舐めてます。このツイートがリツイートされた数だけマックのポテトを買ってくるそうなので、6000RTぐらいして彼の財布が二度と開くことのないようにお願いします(´◔_◔)笑
  url: http://favstar.fm/users/iClaymore/status/247297674288693248
- 
  fav: 1753
  rts: 5006
  text: 今朝、登校中に歩きながら本読んでる小学生男子がいたんだけど、仲がいいと思われる女の子とこんな会話してた。女の子「歩きながら読むと目が悪くなるよ!」男の子「でも二宮金次郎は歩きながら本読んで称えられて像にもされたじゃん!」女の子「あれは、悪いことしたから石に封印されてるの!」
  url: http://favstar.fm/users/iClaymore/status/204898097162231808
- 
  fav: 1524
  rts: 4198
  text: 学科別文系就職死亡度(左ほど死亡)哲学>宗教>芸術>言語>史学>文学>教育>教養>社会>外語>政治>国際>法律>経済>経営>商学   学科別理系就職死亡度(左ほど死亡)惑星>地球>地質>環境>生物>資源>農学>物理>数学>土木>建築>材料>化学>情報>機械>電気
  url: http://favstar.fm/users/_cygne_noir/status/154910103156432897
- 
  fav: 1680
  rts: 3984
  text: 仏「ここに一本の矢がある。一本じゃ簡単に折れちゃうな」独「三本なら折れないと言うんだろう」仏「太さが異なる三本の矢を曲げると、最も太い矢に応力が集中して破断、連鎖的に二本目、三本目も折れる。能力差のある国を無理に束ねたEUの」独「やめろ」
  url: http://favstar.fm/users/kamozi/status/147567469521928192
- 
  fav: 1536
  rts: 3866
  text: 「嫌ならやめろ」と言うのは許されるのに、「嫌だからやめる」は甘えと見なされる矛盾を誰か説明してください
  url: http://favstar.fm/users/nichego55/status/121643363400302592
- 
  fav: 1272
  rts: 2977
  text: 物理のテストで「…力を求めよ」って問題が出たので「欲しい……力が欲しい! 動摩擦力μmgを超える……力が!!」と書いたらボーナス点くれた
  url: http://favstar.fm/users/iClaymore/status/216045211237892097

何を言ってるかよくわかんないけど、長くて内容をもたせようとしていたり、一部の有名人であるという特徴がありますね。一方、50 以上 fav されているにもかかわらず、 50 以下しか RT されていない tweet を fav 数順にリストアップしてみましょう。

- 
  fav: 187
  rts: 29
  text: 乗ってるバスが信号無視したらみんな携帯を取り出して何か打ち込みはじめた。
  url: http://favstar.fm/users/wyinoue/status/19455800869
- 
  fav: 168
  rts: 24
  text: Twitterやる前は仕事中に突然立ち上がって小声で叫んでいた。
  url: http://favstar.fm/users/wyinoue/status/91728001238183936
- 
  fav: 165
  rts: 5
  text: 騒がしい定食屋のカウンターに座ってたら昔遊んでた風な店のおばちゃんがそっと近づいてきて耳元で「ゴメンね、いまお茶持ってくるわね」って小声で言うから他の客に内緒で付き合ってる感じになってる。
  url: http://favstar.fm/users/wyinoue/status/7658250325463040
- 
  fav: 159
  rts: 8
  text: 用法・用量は俺が守る!
  url: http://favstar.fm/users/sentaqu/status/18026060059
- 
  fav: 156
  rts: 7
  text: くまのプーさんみてるけどこいつ本当にバカだ…
  url: http://favstar.fm/users/wyinoue/status/19999339447
- 
  fav: 154
  rts: 6
  text: 最初にエビに火を通した人って色が真っ赤になってびっくりしただろうな。
  url: http://favstar.fm/users/wyinoue/status/12647896373
- 
  fav: 147
  rts: 13
  text: おばさんが会釈しながら自転車で突っ込んできた。
  url: http://favstar.fm/users/wyinoue/status/19562347945267200
- 
  fav: 147
  rts: 7
  text: ダブルクリックの間隔が長い人、寿命長そう。
  url: http://favstar.fm/users/wyinoue/status/7290560147003801

非常に短く、かつおもしろさ以外の情報がない発言が多いですね。

短くておもしろい発言は、拡散されにくく面白がられるので、短くておもしろい発言だけを行っていると人生のリスクが減り、死ににくくなるということがわかりました。ぼくの発言はあまりおもしろいものではありませんので、今後はおもしろい発言を心がけ、人生のリスクを減らしていこうと思います。

以上、拡散お願いします。

この記事は拡散お願いしますアドベントカレンダー2012の14日目の記事でした。

明日は @aksysayk さんです。よろしくお願いします。

NataliNatali2013/03/18 10:36With the bases loaded you struck us out with that awnser!

velhasifvelhasif2013/03/20 02:20JnOQz6 , [url=http://tuavzxxcooes.com/]tuavzxxcooes[/url], [link=http://fkhojtflypbr.com/]fkhojtflypbr[/link], http://nugeifjdjmql.com/

dgiatocsludgiatocslu2013/03/20 10:54nAkYlC <a href="http://qquctvrlbotb.com/">qquctvrlbotb</a>

najbzkhnajbzkh2013/03/22 02:00X0PMS5 , [url=http://tetzwpbqpmeg.com/]tetzwpbqpmeg[/url], [link=http://sxfmbwpwurls.com/]sxfmbwpwurls[/link], http://nhvzpnafffzj.com/

uksfdggkjouksfdggkjo2014/02/05 10:54aokpmhjwf.nf.npofz, <a href="http://www.hdbxtcszsm.com/">zbazvcesia</a> , [url=http://www.zxpucmhsgr.com/]sbxrsuvuuy[/url], http://www.jsklpkxdoz.com/ zbazvcesia

2012-11-02

Yandex がタダデータセットと賞金がもらえるコンテストをやるそうです 11:11 Yandex がタダデータセットと賞金がもらえるコンテストをやるそうです - fuba needs money を含むブックマーク はてなブックマーク - Yandex がタダデータセットと賞金がもらえるコンテストをやるそうです - fuba needs money

誰でも知ってるロシアの Yandex がタダログと一等賞金$5000のコンテストをやるそうです。

タスクセッションに対して、ユーザが検索エンジンを切り替えたかどうかを識別するというちょっと変わったもので、おもしろそうなので暇で $5000 ほしくて賞とったときに論文書いて自費でローマ行ける人はぜひ参加するといいと思います。高い…

http://switchdetect.yandex.ru/en/datasets

LorenaLorena2012/12/09 10:43What a pleasure to find someone who identifies the isseus so clearly

vpxheidovpxheido2012/12/09 19:50l9IrbK <a href="http://vsojhrzlgxkm.com/">vsojhrzlgxkm</a>

gumplrvbotgumplrvbot2012/12/12 17:17jkovLH <a href="http://mfqqwvcxraug.com/">mfqqwvcxraug</a>

xaxuzmtqlykxaxuzmtqlyk2012/12/13 10:05xLs1yy , [url=http://ufuapvonyern.com/]ufuapvonyern[/url], [link=http://ivhuppscjvwd.com/]ivhuppscjvwd[/link], http://hskegnpikbya.com/

2012-09-09

ElasticSearch でいろんなデータに自由に全文検索インデックスを張る 00:24 ElasticSearch でいろんなデータに自由に全文検索インデックスを張る - fuba needs money を含むブックマーク はてなブックマーク - ElasticSearch でいろんなデータに自由に全文検索インデックスを張る - fuba needs money

追記:このエントリでは古い ElasticSearch モジュールを使っています。新しい公式クライアントを使ったほうがいいよ!!!

最近流行ってる ElasticSearch という Lucene ベースの便利な全文検索エンジンがあるんだけど、オレオレ画像検索をこれに移行させようとしたら Tokenizer とか Analyser とか意味わかんなくてめんどくさかったので備忘録としてエントリ書いておく。

インデックス作る奴

perl だけど、まあ create_index に json 送るだけですよ。

#!/usr/bin/perl
use strict;
use warnings;
use utf8;

use ElasticSearch;

my $es = ElasticSearch->new(
    trace_calls => '/tmp/es_log', # デフォルトだと実行したディレクトリがログまみれになる
);

$es->delete_index(
    index => 'pics',
); # 細かくインデックスを追加することもできるみたいだけど、めんどいのでこのスクリプトはインデックス全部消して1からつくります

my $result = $es->create_index(
    index   => 'pics',
    settings => {
#        number_of_shards      => , # 一人で使うのでこのへんは無視
#        number_of_replicas    => 2,
        analysis => {
            tokenizer => {
                ngram => {
                    type => 'nGram',
                    min_gram => 2,
                    max_gram => 3
                },
            },
            analyzer => {
                default => {
                    type => 'custom',
                    tokenizer => 'ngram',
                },
                simple => {
                    type => 'simple'
                },
                tags => {
                    type => 'pattern',
                    pattern => '[\\,\\s]',
                },
            }
        }
    },
    mappings => {
        picture  => {
            properties  => {
                texts => { type => 'string', analyzer => 'default' },
                tags => { type => 'string', analyzer => 'tags' },
                time => { type => 'long', analyzer => 'simple' },
                sha256 => { type => 'string', analyzer => 'simple' },
                md5 => { type => 'string', analyzer => 'simple' },
            }
        }
    }
);

とりあえずインデックスする対象のフィールドごとに mappings に properties(それぞれのフィールドがどういう型でどの analyzer で語を分割するかとか)をどんどん書いていく。ここでは analyzer のところには同じトークナイズをしたいものは同じ名前になるように適当なものを書いていく。今回はタグがカンマ区切りのソースなので、ここだけ特殊なものにして、textsは内容なので default 、それ以外はハッシュとか数値なので simple というかんじにした。long のソートLucene よくしらんけどまあインデックス使ってくれるんでしょう。

つぎは properties で設定した名前に対応する analyzer というのを書く。default のテキストはまあ日本語だし NGram Tokenizer でいいんだけど、NGram Tokenizer の最小文字数が1文字というふざけたデフォルトなので、tokenizer の設定は細かく行いたい。そこで type: custom にして、tokenizer は名前かぶってややこしいけど ngram にした。この詳細設定はあとでやる。simple については type: simple で適当に空白とかで区切ってくれるらしいし、今回のハッシュとかには空白入ってないのでこれで文字列の完全マッチと同じになる。tags についても simple でいいんじゃね?と思ったんだけど、マニュアルみるとbut does a terrible job for some Asian languages*とか書いててびびるので type: pattern で正規表現で区切り文字を指定する。これでタグに完全マッチしてくれる。

最後にあとでやると書いといた tokenizer の細かい設定を行う。ngram という名前の tokenizer の type を nGram、2-gram から 3-gram を使うという設定にする。1文字の検索ができなくなるけど、まあ今回の実装では実は tags と texts に同じ文字列が入っているので、そういうのは tags を検索すればよい。

これで ElasticSearch で思い通りに日本語が検索ができるようになって、よかったねという話でした。

JuliaJulia2012/09/21 13:23I litleraly jumped out of my chair and danced after reading this!

pboqjkkadpboqjkkad2012/09/22 00:154VUQxw <a href="http://xvlvqppuefba.com/">xvlvqppuefba</a>

avqshkgavqshkg2012/09/22 12:03lu8tCR , [url=http://ynqgyjriupkj.com/]ynqgyjriupkj[/url], [link=http://qmxdjgvgchdj.com/]qmxdjgvgchdj[/link], http://rmplgamirwhc.com/

guiadglelplguiadglelpl2012/09/23 05:41xIfcYZ <a href="http://xbcllstiseyg.com/">xbcllstiseyg</a>

aednjoshaednjosh2012/09/24 20:56AGtPDR , [url=http://axvsbydtfcag.com/]axvsbydtfcag[/url], [link=http://houqjbwwnwsj.com/]houqjbwwnwsj[/link], http://wjuorbnxxdcy.com/

2012-02-23

Linux::DVB::DVBT::TS を使って MPEG2-TS からスナップショットをいっぱい撮る 04:50 Linux::DVB::DVBT::TS を使って MPEG2-TS からスナップショットをいっぱい撮る - fuba needs money を含むブックマーク はてなブックマーク - Linux::DVB::DVBT::TS を使って MPEG2-TS からスナップショットをいっぱい撮る - fuba needs money

PerliEPG をうまく扱ってる人いないかなーと思って CPAN モジュールを漁っていたところ、Linux::DVB::DVBT::TS というモジュールを見つけたんだけど、これが名前からはいまいち想像つかなかったけど libmpeg2 を使って MPEG2-TS をパーズしながらコールバック関数実行してくれるやつらしくて、便利そうだったので fuba_recorder でスナップショットを撮る(キャプチャをする?いまいちこの行為を指す言葉がよくわかってないです)コードをサンプルパクりつつ書いた。

gist記法ないのかよ。ppm しか吐かないけど、どうせすぐ convert するし、便利。

これをなぜ作ったかというと、最近の ffmpeg に生 TS を食わせたときに、-ss オプションの時刻が I フレームにピッタリ合ってないと

[mpegts @ 0x19bf510] Too many streams
[mpeg2video @ 0x19e5d10] mpeg_decode_postinit() failure

みたいな感じのエラーがどんどんでてくるし、このときに撮ったスナップショットは無色の画像になってしまうので困るというのがニーズとしてあった。今までは Ubuntu 10.04 だと apt ではいる ffmpeg が古いのでそれをだましだまし使っていたのだけど、今日偶然 lucid-bleed を使うことにしたら ffmpeg も新しくなってしまったのでこのままだと recorder のキャプが

男子高校生の日常 #7 男子高校生と一発芸/男子高校生と室内の冒険/男子高校生と室内の冒険2/男子高校生と兄/男子高校生とありのままの自分/男子高校生と進路/男子高校生とミ

みたいなのばかりになってしまうところだったし、偶然このモジュールをみつけてたいへんよかったと思う。

視点・論点「それぞれの福島(5)“転機”を超える萌(ほう)芽」  1

今回つくったやつで作ったキャプ、たいへんきれい。ファイル名バグってますね。

2012/12/06 現在はタイムアウトつけて刺さんなくしたバージョンを使ってるので更新しました。

ArashArash2012/07/14 18:13We need more insights like this in this theard.

gqcsoirfagqcsoirfa2012/07/16 07:26XH0LnA , [url=http://fjqrpyivfqim.com/]fjqrpyivfqim[/url], [link=http://hrbninrqodch.com/]hrbninrqodch[/link], http://djanwvcdgvuw.com/

xysvksxysvks2012/07/16 18:02CyIn0q <a href="http://okvwytiyeyad.com/">okvwytiyeyad</a>

jtzzvzcgjtzzvzcg2012/07/16 23:00Pf8G2Z , [url=http://ykuunllivsur.com/]ykuunllivsur[/url], [link=http://cgdzaantcbvm.com/]cgdzaantcbvm[/link], http://rlrqbspvomtb.com/