WhatsAppずVKのオヌプンデヌタから人々のデヌタベヌスを収集したす

゚タンハント

映画Mission Impossible IIからのショット



この話は、数か月前、息子の1歳の誕生日に始たりたした。 䞍明な番号からのお祝いず願いずずもに、SMSメッセヌゞが私の電話に届きたした。 私の誕生日だったら、文化的なこずではなく、「ありがずう、あなたは誰ですか」 しかし、誕生日は私の誕生日ではありたせん。おめでずうず蚀う人を芋぀けるのは面癜かったです。



最初の成功



次のオプションを詊しおみるこずにしたした。



幞運なこずに、私の堎合、写真のミニチュアが新しく䜜成された連絡先の隣にあるViberの連絡先リストに衚瀺されたした。これにより、完党に開かずに送信者を認識し、「調査」に満足し、おめでずうございたす



怜玢が成功しお2回目の陶酔感が生じた盎埌に、モバむルオペレヌタヌの番号のリストを゜ヌトしおベヌス[phone_number => photo]をたずめるずいうアむデアが頭に浮かびたした。 さらに1秒埌に、これらの写真を顔認識システムに枡し、他のオヌプンデヌタ゜ヌシャルネットワヌクからの写真などずリンクするずいうアむデア。



圓然、ポむント3写真から送信者を決定するためでは、倱敗が私たちを远い越す可胜性があり、この倱敗には6぀の遞択肢がありたす。



4番目の段萜写真の猫には倚くのオプションがありたす。これらは有名人の写真、挫画のキャラクタヌ、食べ物、車、歊噚などの写真です。



少量のテスト。



ペンのテストずしお、圌の連絡先リストで実隓するこずが決定されたした。 Androidスマヌトフォンでは、Viberは連絡先写真を/ sdcard / viber / media / User photosフォルダヌに[Hash] .jpgずしお保存したす。 ファむルは、この連絡先ず䌚話したか、少なくずも圌のプロファむルを開いおしばらくしお削陀したずいう条件でのみ保存されたす。 実隓では、20人のナヌザヌのプロファむルを手動で開いたり閉じたりしたす。



ファむルが芋぀かった知り合いの䞀郚は、゜ヌシャルネットワヌクでも発芋され、「顔を自動的に認識する」オプションを有効にしおPicasaプログラムにアップロヌドされたした。 プログラムによっお認識された人は、所有者に応じお名前が付けられたした。 次のステップでは、Viberからの写真を含むフォルダヌをPicas'eにフィヌドしたす。 類䌌した人の堎合、疑問笊の付いたアむコンが「ナヌザヌ」りィンドりに衚瀺されたす。



私の堎合、元の20人のナヌザヌに぀いお、Viber Picasaは2぀の䞀臎のみを怜出したした。 同時に、これらの2぀のケヌスは非垞にコミカルに䞀臎したした各ペアでは写真は互いに異なっおいたしたが、同じ日に撮圱されたした最初の人の堎合、頭の回転ず笑顔の有無は2぀の写真で異なり、2番目の堎合は笑顔だけが異なりたした。



画像



珟圚の合蚈は非垞に成功しおいたす。

Viberのサンプル20すべお猫ず食べ物が䞊んでいたす

VKからのサンプリング5写真内の誰かを芖芚的に認識できる堎合のみ

忠実な人のマッチ2

停の䞀臎0



怜玢を開始したす


電話を䜿甚しおデヌタを取埗しおみたしょう。 Viberは電話垳から連絡先を取埗したす。これは、Android OSではGoogleアカりントに関連付けられおおり、アカりントごずに25,000の番号の制限がありたす。 珟圚、モスクワに割り圓おられおいる携垯電話䌚瀟の数は93,311,000であるため、このような「正面からの解決策」で基地を獲埗するずいう考えはもはやありたせん。 さらに、Viberが少なくずも25,000個の番号の最初のバンドルを取埗した堎合でも、各プロファむルに移動しお、結果の[Hash] .jpgファむルを特定の番号に接続する必芁がありたすおそらく、ファむルの䜜成日たで远跡できたすしかし、それはただ非垞に時間がかかり、長いです。



゜リュヌションはすぐに芋぀かりたした。ネットワヌクには、別の䞀般的なサヌビスであるWhatsAppの゜フトりェア実装がありたす。 すべおの呌び出しはphpを経由したす。 新しいナヌザヌを登録するための既補のスクリプトがあり、実際にはgetProfilePictureを呌び出す䟋がありたす。 プロセスを開始するには、* nixサヌバヌが必芁であり、芁求の頻床ず速床にどれだけ耐えられなくなるかを理解する必芁がありたす。 実隓のために、Whatsappにログむンし、無限ルヌプで数倀+ 7XXXXXXXXXX getProfilePictureを受信/受信せず、画面にタむムスタンプを衚瀺するphpコヌドを䜜成したした。 最初ずその埌の起動時に、このコヌドは220〜250の数倀に達し、 タむムアりトになりたした-200回ごずにスリヌプ5を䞀時停止しようずしたす-ずにかくtimeout プロセスを完了し、すぐに再起動を詊みたす-成功。 したがっお、サヌバヌの制限200リク゚スト埌に再床ログむンする必芁がありたす、たたはこのphp実装の゚ラヌに察凊しおいたす。 私は実隓したせんでしたが、phpスクリプトを曞き盎しお200個の数字のみを凊理し、ルヌプ内でパラメヌタヌ$ startPhoneNumberで phpを開始しお終了するのを埅぀Bash制埡スクリプトを远加するこずで、1石で2矜の鳥を殺したした。



したがっお、1秒あたり5.7の速床の動䜜する列挙スキヌムが埗られたした。

モスクワの党容量を凊理するには、次のものが必芁です。



93 311 000数倀/ 5.7毎秒の数倀/ 60秒/ 60分/ 24時間〜 190日 。



マルチスレッド



WhatsAppログむンは倧量に行われたす



ナヌザヌ名 -7XXXXXXXXXX圢匏の電話番号

パスワヌド -登録スクリプトを介しお受け取りたす登録には、確認コヌドを取埗するために動䜜するsimカヌドが必芁です

ニックネヌム -任意の名前



WhatsAppは、䞀床にナヌザヌ名ごずに1぀以䞊の認蚌を犁止したす。 これに関連しお、MegaFonオペレヌタヌ200 rの3枚のSIMカヌドがそれぞれ公匏ストアで賌入されたした。 それぞれ。 Centos OSの同じサヌバヌから、3぀すべおの数倀がWhatsAppに登録され、3぀すべおがBeeline Businessの胜力を備えたスクリプトに埓っお実行されたした。 保存された写真に察する郚屋の数の比率は、10から1の範囲でした。 次に、「数癟」ず「数千」のために差が倧きくなりたした。これらは明らかにただ分垃しおおらず、範囲党䜓で単䞀の画像を生成しおいたせん。



ロックする



WhatsAppラむセンス契玄登録時に同意したすは次のずおりです。



ENG契玄からの抜粋
C.「ロボット」、「スパむダヌ」、「オフラむンリヌダヌ」などを含むがこれらに限定されない自動システムを䜿甚たたは起動しないこずに同意したす。 たたは、wget、apache bench、mswebstress、httpload、blitz、Xcode Automator、Android Monkeyなどの「ロヌドテスタヌ」。䞀定期間内にWhatsAppサヌバヌに倚くのリク゚ストメッセヌゞを送信する方法でサヌビスにアクセスしたす。人間はWhatsAppアプリケヌションを䜿甚しお同じ期間に合理的に制䜜できたす。特に蚱可されない限り、コンテンツをリッピングするこずは犁止されおいたす。 䞊蚘にかかわらず、WhatsAppは、公開怜玢゚ンゞンの運営者に、クモを䜿甚しおりェブサむトから玠材をコピヌする蚱可を䞎えたすが、これは玠材の公開された怜玢可胜なむンデックスを䜜成するこずのみを目的ずしおおり、そのような玠材のキャッシュたたはアヌカむブは蚱可したせん。 WhatsAppは、䞀般的にたたは特定の堎合にこれらの䟋倖を取り消す暩利を留保したす。 䞀般に、Ethereal、tcpdump、HTTP Watchなどのスニファヌの䜿甚を犁止しおいたせんが、システムやプロトコルをリバヌス゚ンゞニアリングしたり、WhatsAppクラむアントによっお行われた通垞のリク゚ストの境界倖を探玢したりする努力を犁止しおいたす。 フィドラヌやりィスカヌなどのリク゚スト倉曎ツヌル、たたはサむトの探玢、危害、䟵入、たたはテストを目的ずするその他のツヌルアクティビティの䜿甚を犁止する必芁がありたす。 ドメむンでホストされおいるネットワヌク機噚、サヌバヌ、たたは資産を枬定、テスト、ヘルスチェック、たたはその他の方法で監芖する前に、圓瀟の蚱可を確保する必芁がありたす。 お客様は、電話番号を含む個人を特定できる情報をサヌビスから収集たたは収集せず、商業的な勧誘たたはスパム目的でサヌビスが提䟛する通信システムを䜿甚しないこずに同意したす。 お客様は、本サヌビスのナヌザヌをスパムしたり、商業目的で勧誘したりしないこずに同意したす。




契玄からの抜粋。 おおよその翻蚳
「あなたは、WhatsAppサヌビスの芁求を送信する自動システムを、人ができる以䞊に䜿甚たたは実行しないこずに同意したす...」




SIMカヌドはすべお、3日目に説明なしでブロックされたした。 ログは、すべおのカヌドで同時にモスクワ時間の00:22にシャットダりンが発生したこずを瀺しおいたす各カヌドを凊理するために管理された玄500,000の番号。 興味深いこずに、WhatsAppサヌバヌは最初に非垞に長い時間リク゚ストに応答し始め、その埌、認蚌を完党に停止したした。 サヌバヌは、番号「 Failed; ReasonBlocked; 」を登録しようずしお応答したす。 WhatsAppを人間ずしお登録しようずするず、「申し蚳ありたせんが、WhatsAppサヌビスを䜿甚できなくなりたした。」ずいうメッセヌゞが電話からポップアップ衚瀺されたす。



実行䞭の3぀のスクリプトすべおが同じ速床で同じこずを行っおいたずいう事実に加えお、それらを同時にブロックする倚くの共通点がありたした。぀たり、すべお同じニックネヌム「V」でログむンし、 IPアドレス



スキヌムを耇雑にしたす






私たちは、圌らが少し賢くなったず信じおいたすすなわち、これらの3぀のSIMに600ルヌブルを費やしたした。 今回は、メトロの「非公匏ストア」で100ルヌブルで10枚のSIMカヌドを賌入したす。 䞀枚。 スクリプトを耇雑にし、SIMカヌドの配列を䜜成し、1぀の玠晎らしい映画の俳優のリストに埓っお、それぞれにニックネヌムを付けたす。



配列宣蚀
// username,"password","nickname" $SIMDict = array( <br> "SIM1" => array(7969XXXXXXX,"123123211231231231231231231=","Zooey"), "SIM2" => array(7916XXXXXXX,"123123211231231231231231231=","Martin"), "SIM3" => array(7985XXXXXXX,"123123211231231231231231231=","Sam"), "SIM4" => array(7916XXXXXXX,"123123211231231231231231231=","Bill"), "SIM5" => array(7985XXXXXXX,"123123211231231231231231231=","Mos"), "SIM6" => array(7985XXXXXXX,"123123123211231231231231231=","Warwick"), "SIM7" => array(7916XXXXXXX,"123123211231231231231231231=","Anna"), "SIM8" => array(7985XXXXXXX,"123123123123123123123123121=","John"), "SIM9" => array(7,"","Kelly"), "SIM10" => array(7,"","Jason") );
      
      







各SIMカヌドを個別のIPアドレスから匷制的に終了させたす
Centosは、Hyper-Vハむパヌバむザヌの䞋で実行される仮想サヌバヌです。これにより、7぀のむヌサネットアダプタヌを远加できたすHyper-vの制限8぀のむヌサネットアダプタヌ+ 4぀のレガシヌ。 それぞれ異なるIPアドレスでphpプロセスをオンラむンにするだけです。



システムにはデフォルトでサブシステムip名前空間ip netnsがあり、これによりネットワヌクスタックを完党に仮想化できたす。 これは、いわゆるネヌムスペヌスnsを䜜成できるこずを意味したす。個々のnsには、アドレス、ルヌト、ルヌル、dnsなどがありたす。むンタヌネット䞊のip netnsに関する蚘事は倚くありたせんが、物理むンタヌフェヌスの䜿甚-デフォルト以倖の名前空間に物理むンタヌフェヌスを远加するこずは䞍可胜であるず曞いおいる人もいれば、タップむンタヌフェヌスを介しおのみ接続できるが、タップなしで行うこずができるものもありたす。



7぀のセカンダリIP゚むリアスを䜜成し、それらを盎接たたはタップむンタヌフェむスを介しお異なる名前空間に分散させるこずに成功したせんでした。 しかし、7぀のnamespace'ovを䜜成し、それぞれに個別の物理むンタヌフェむスを接続するオプションは、むンタヌネットコミュニティの保蚌にもかかわらず、問題なく可胜でした。

構成コマンド
リナックス

 ip netns add net1 && ip link set netns net1 dev eth1 ip netns exec net1 ip addr add YYY71/24 dev eth1 ip netns exec net1 ip link set up dev eth1 ip netns exec net1 ip route add default via YYY1 ip netns add net2 && ip link set netns net2 dev eth2 ip netns exec net2 ip addr add YYY72/24 dev eth2 ip netns exec net2 ip link set up dev eth2 ip netns exec net2 ip route add default via YYY1
      
      





シスコ

 ip nat inside source static YYY71 XXX71 ip nat inside source static YYY72 XXX72
      
      









レガシヌアダプタヌはたったく機胜しなかったため、8枚のカヌドに泚目したしょう。



これで、BashスクリプトはstartNumber、endNumber、SIM、NSを取りたす。ここで、SIMは配列内のsimカヌドの名前、NSはphpプロセスを開始するネヌムスペヌス名です。 呌び出し䟋

 ./run.sh 79671380000 79671780000 SIM1 net1 &
      
      





run.shスクリプト自䜓
 ... start=$1 last=$2 net=$4 startParam="ip netns exec $net" ./pushme.sh "$3 $4" "$start begins" while [ $start -lt $last ] do $startParam php ./getProfiles.php instance=$start prefix=$start count=50 sim=$3 net=$4 #> $3.log start=$(( $start + 50 )) done ...
      
      









容量を2,000未満の数字に分割したす。 たた、プッシュオヌバヌ経由でプッシュ通知スクリプトをBashずphpに远加したす「7XXXXX開始」、「7XXXXX終了」、「ヒュヌストンに問題がありたす」



WhatsAppサヌバヌから非暙準の回答を送信するか、非垞に長い5秒を超える応答がない状態で埌者を送信したす。



今埌、WhatsAppは私よりもトリッキヌであり、これらのSIMカヌドはすべお、しばらくしおほが同時にブロックされたず蚀いたいず思いたす。 いずれにせよ、スクリプトはただ8,000,000の電話番号をうたく凊理し、411,279枚の写真を手にしおいたす。 20察1の比率。これはすでに非垞に良奜です。





モスクワの凊理結果の遞択



ネネツ自治管区



長い間、残りのSIMカヌドを有効にしおスクリプトを実行するこずはできたせんでした。 最埌に、無料の議事録が登堎し、それにより、モスクワからのバスティング人口12 197 596人が嚁勢のいいものであるこずを認める匷さがありたした。 したがっお、私たちは若々しい最倧䞻矩をより深く隠し、䟋えばネネツ自治管区のような人口の少ない䞻題を取り䞊げたす。 なぜだ。 スクリプトを開始したす-そしお、12時間埌にNenets okrugのすべおの容量の列挙が完了したした。 169,995の数字に぀いお、合蚈2,288枚の写真がWhatsAppで芋぀かりたした。 次のステップに進みたす。



VKontakte



タスク興味のある郜垂を持っおいるVKナヌザヌのすべおの写真を取埗したす。



VK APIの凊理にはかなりの時間がかかりたした。 そしお、getuserリク゚ストはアクセストヌクンなしで問題なく完了できるこずがわかりたした。 ただし、怜玢ク゚リ特定の郜垂の人だけを取埗するはトヌクンでのみ機胜し、スタンドアロンアプリケヌションではなくナヌザヌで受信されたす。 蚘事「vk apiを操䜜するためのアクセストヌクンを取埗した方法」は 、これに圹立ちたす。 ただし、このトヌクンを受け取った堎合でも-制限が発生したす-たずえば、Naryan-MarNenets Autonomous Okrugの郜垂がリストされおいるにもかかわらず、1000人のナヌザヌしか取埗できたせん1回のリク゚ストで1000人ではなく、合蚈1000人。 。



総圓たりでget_usersを実行しようずしたす。次のリク゚ストで、$ id = 1からNたでのすべおのVKontakteナヌザヌを゜ヌトしたす。

 response=$(curl --silent "https:// api.vk.com /method/users.get?user_id=$id&fields=photo_max_orig,country,city")
      
      





この蚘事を曞いおいる時点では、VKontakteにはN = 3億人のナヌザヌがいたした。 写真をダりンロヌドせずにこのようなリク゚ストを行うず、1秒かかりたした。



300,000,000ナヌザヌ/ 1毎秒/ 60秒/ 60分/ 24時間〜3472日。



VKがIPアドレスをブロックしない堎合、1぀のスレッドで合蚈玄3472日です。 オプションは砎棄されたした。



users.searchに戻りたす。出力の数には制限がありたすが、リク゚ストの「品質」には制限がありたせん。 説明したす。 リク゚ストでは、パラメヌタを無限に絞り蟌むこずができたす。たずえば、女性たたは男性のみを撮圱する、問題を半分にする、たたは写真を持っおいる人だけを撮圱する、そしお最も䟿利なのは特定の幎霢の人だけを撮圱するこずです。最倧80回。合蚈66回の1000回の実行。ただし、䞀郚の幎霢で1000を超える堎合は、性別でさらに分割しおこのようなク゚リを繰り返したす。





Naryan-MarのVKナヌザヌの幎霢分垃



VKからの段階的なスクリプトのダりンロヌド
 01: acc_token="abc123abc123abc123abc123abc123abc123abc123abc123" 02: vk_url="api.vk.com/method/users.search?has_photo=1&count=1000&city=2487&country=1&access_token=$acc_token&fields=photo_max_orig" 03: 04: for age in {14..80} 05: do 06: echo -n $id " " >>vk.log 07: date +"%T" >>vk.log 08: mkdir photos/$id 09: list=$(curl --silent "$vk_url&age_from=$age&age_to=$age" | jq '.response | .[] | (.uid|tostring) + " " + .photo_max_orig' | \ sed 's/^"\(.*\)"$/\1/') 10: counter=0 11: while read -r line; do 12: let counter++ 13: arr=($line) 14: echo -n "$counter." >>vk.log 15: photo=${arr[1]} 16: filename=${arr[0]}$(echo $photo | sed "s/.*\(\..*\).*$/\1/") 17: wget $photo -O photos/$id/$filename 18: done <<< "$list" 19:done
      
      







実際、スクリプトは、同じIPから事前に受信したaccess_tokenを䜿甚しお、特定の郜垂city = 2487から特定の幎霢のすべおの人々のリストをVK APIを介しおルヌプで芁求したす。

ここで最も興味深いのは、行番号9です。

VKontakteビュヌからJSONレスポンスを返したす{"response"[COUNT、{"uid"XXXXXXX、 "first_name" "Ivan"、 "last_name" "Ivanov"、 "photo_max_orig" "http\ / \ / QQQ.vk.me \ / ZZZ \ /YYY.jpg "}をリストに远加

id photo_urlXXXXX http// QQQ.vk.me / ZZZ / YYYなど

これを実装するには倚くの方法があり、おそらくもっずきれいなオプションがありたす。 しかし、これを行う方法を探しお、「jqは軜量で柔軟なコマンドラむンJSONプロセッサ」ず呌ばれるものに出䌚いたした。

jq '.response | 。[] | .uid | tostring+ "" + .photo_max_orig '



最埌から読み取る堎合配列のすべおの芁玠の写真.photo_max_origぞのリンクを持぀ナヌザヌID.uid | tostringを取埗したす。





19歳で、VKは䜕かを疑い、問い合わせに非垞にゆっくりず反応し始めたした。 1時間半埌、13,967枚の画像がダりンロヌドされたした。 残りの1,700人は、たったく衚瀺されおいなかったようです。 ダりンロヌドされた別の400個の画像は、䜕らかの理由で壊れおいるか、非垞に小さい<10 kbこずが刀明したした。



顔認識ず比范



すでにわかっおいるように、受け取った画像の䞭には猫ず車がたくさんあるので、最初はそれらをフィルタリングしたいず思いたす。 OpenCVオヌプン゜ヌスコンピュヌタヌビゞョンラむブラリ、オヌプン゜ヌスコンピュヌタヌビゞョンラむブラリがこれに圹立ちたす。



このラむブラリに基づいたさたざたなプログラミング蚀語の実装が倚数ありたす。 たずえば、写真の顔の座暙を決定するfacedetect。 圌女はImageMagickず䞀緒に、認識された顔を座暙で別のファむルに切り取りたす。



写真の顔認識により、Betafaceから興味深い実装がありたす。 倚数の画像の有料APIがありたすが、アップロヌドされた写真に存圚する党員を認識し、性別、口ひげ、メガネ、笑顔の存圚を刀断し、掚定幎霢私は27歳、うさぎのぬいぐるみを瀺す優れたデモがありたす冷蔵庫で-42。





英語の開発者Terence Edenから既補のpythonスクリプトを取埗したす。 圌は非垞に興味深いプロゞェクトの䞀郚ずしおそれらを曞きたした。 圌の仕事は、ロンドンテヌトブリテン博物通から絵画の公開コレクションをダりンロヌドし、その䞊にいる人々の画像を認識するこずでした。 次に、結果の顔のベヌスず写真を䜿甚しお、可胜な限りあなたに䌌た人物を描いた写真を芋぀けるこずができたす。 残念ながら、圌はWeb APIを提䟛しおいたせんが、すべおの゜ヌスはgithubにありたす。



Terenceスクリプトを修正したす-British Galleryからのダりンロヌドをオフにし、フォルダヌごずの凊理を削陀したす。

Pythonスクリプト
 import sys, os import cv2 import urllib from urlparse import urlparse def detect(path): img = cv2.imread(path) cascade = cv2.CascadeClassifier("haarcascade_frontalface_alt.xml") rects = cascade.detectMultiScale(img, 1.3, 4, cv2.cv.CV_HAAR_SCALE_IMAGE, (20,20)) if len(rects) == 0: return [], img rects[:, 2:] += rects[:, :2] return rects, img def box(rects, img, file_name): i = 0 # Track how many faces found for x1, y1, x2, y2 in rects: print "Found " + str(i) + " face!" # Tell us what's going on cut = img[y1:y2, x1:x2] # Defines the rectangle containing a face file_name = file_name.replace('.jpg','_') # Prepare the filename file_name = file_name + str(i) + '.jpg' file_name = file_name.replace('\n','') print 'Writing ' + file_name cv2.imwrite('detected/' + str(file_name), cut) # Write the file i += 1 # Increment the face counter def main(): for filename in os.listdir('whphotos'): print filename + " " rects, img = detect("whphotos/" + filename) box(rects, img, filename) os.remove("whphotos/" + filename) if __name__ == "__main__": main()
      
      









凊理結果

VKからの13,500個の画像=> 6,427 / 5,446人。 考慮に入れる/ 1枚の写真に耇数の人物がいる堎合を陀く

WhatsAppの2 208 => 963/876人



興味深いパタヌンが芋られおいたす-ナヌザヌが2人に1人はプロファむルに写真を茉せおいたせん。



次の認識は、 eigenfaces.xmlモデルの䜜成です。 このスクリプトは、゜ヌス写真フォルダヌからXMLファむルを䜜成するために甚意されおおり、今埌怜玢されたす。 したがっお、1぀のセットにこのようなファむルを準備し、2番目の芁玠から1぀の芁玠を取埗しお、䞀臎するものを探したす。 技術者は、どのキットをメむンずしお䜿甚するかを決定したした。VKからの6,400枚の写真は、「 4GBを超えお割り圓おるこずができたせんでした 」ずいうメモリ゚ラヌでスクリプトで凊理できたせんでした 。 時間-11泊-理解するのは狩りではありたせん-WhatsAppからスクリプト963枚の写真を芋お、20分埌にeigenfaces.xmlのサむズが1.6 GBになっおいたす。 VKの堎合のサむズを想像できたす。 埌で刀明したした。スクリプトを自分でやり盎したしたが、モデルの識別行を誀っお削陀したした。すべおの芁玠の識別子が「0」ではありたせんでした。 スクリプトが実行されるたで数日埅っおから怜出するのはばかげおいるでしょう。 ゚ラヌを修正し、さらに20分埅ちたす。



次に、VKの各ファむルに察しお、怜蚌スクリプトを実行したす。

 find detectedVK/ -name *.jpg -exec ./myscript.sh {} \; #myscript.sh python recognise.py detectedWH $1 100000 >> result
      
      





ここでの「100000」は、100での䞀臎の粟床であり、完党䞀臎です。

1回の比范に40秒ありたす。 1぀のプロセッサで6 400 * 40〜3日。 倜に出発したす。 寝たしょう-明日は月曜日です。



䞀臎のこのような小さなサンプルではれロになるず考えおいたずすぐに蚀わなければなりたせん。 スクリプトが機胜しおいる間、私は定期的に偶然の䞀臎を芋たした。 私が瀺した正確さで倚くの結果がありたしたが、よく調べおみるず、「3500」皋床のマッチでも、男の子ず女の子の結果がたくさんありたした。 同時に、これら2人の芪relativeずいう感じがありたした。 結果は興味深いものですが、これは私たちが探しおいたものずはたったく異なりたす。



最初のヒットは、最初の1,000アカりントの終わりに発生したした。 Naryan-Mar垂の女の子YanaがWhatsAppずVKに同じ写真を茉せたした。 写真は同じ解像床のみが異なるにもかかわらず、䞀臎の粟床は〜3,000です。粟床が6,000未満のすべおの結果に぀いお、 converを䜿甚しお䞀臎する画像を組み合わせお芖芚的に最終決定を䞋したす。



 ... if [ "$precise" -lt 6000 ] then echo $precise $whIMG $vkIMG convert detectedWH.bak/$whIMG detectedVK.bak/$vkIMG -append convertResults/${precise}_$whIMG$vkIMG fi ...
      
      











合蚈で、2日目の終わりたでに、25個のVKアカりントが正垞に認識され、電話番号に関連付けられたした。



これは、芋぀かったWhatsApp顔の数の2、たたはすべおの画像の1です。





Naryan-Marの分析結果



これは玠晎らしい結果だず思いたす。その理由は次のずおりです。





特定の数字に぀いお話すこずは困難ですが、すべおのポむントが芳察された堎合、成功したヒットの割合が倧幅に増加するこずは確かです。 もちろん、このためのプロセッサパワヌも数回増やす必芁がありたす。



おわりに



なぜこれだけなのか。 埗られたデヌタの瀟䌚ぞの実甚的な実甚化はただ考えおいたせん。 研究のためにちょっずした研究になりたした。



OpenCVラむブラリは優れたツヌルであり、取埗したデヌタを䜿甚しお、倚くの興味深い実隓を行うこずができたす。



最埌たで読んだ人ぞの報酬ずしお、これは、䟋えば、楜しいオプションですロシア人ず倖囜人の有名な女優の写真からeigenfaces.xmlモデルを収集し、WhatsAppから受け取ったMuscovitesデヌタベヌスぞの準拠を怜玢したす珟圚、玄400,000人。 道埳的な芁玠を考慮せずに぀たり、質問芋知らぬ人に電話するのは文化的ですか、番号をダむダルしお映画通に招埅したす。 3000〜100の粟床でメむンキャラクタヌのように芋える女の子ず映画通に行くのは楜しいです。







結論ずしお、「プラむバシヌ蚭定を確認するこずを忘れないでください」ず蚀うこずができたす。 しかし、私は偏執的なムヌドの倧埌揎者ではありたせん「 圌らは私がどこにいるか知っおいたす」、「むンタヌネットプロバむダヌは私のすべおを知っおいたす」、「ビッグブラザヌは私たちをフォロヌしおいたす」など。 たずえば、劻が電話で匿名のゞオデヌタのコレクションをオフにするず、圌女が「芋぀ける」ずいう蚀葉誰が、最も重芁なのは圌女がただ思い぀いおいない理由で私は面癜がっおいたす。



誰かが私を探しおくれるかどうかはわかりたせん-人生で䜕も違反しおいないようですWhatsAppラむセンス契玄を陀く。



All Articles