LoginSignup
12
4

More than 5 years have passed since last update.

まだ彼女作りで消耗してるの?/v2

Last updated at Posted at 2017-12-01

カノジョできないエンジニア Advent Calendar 2017 【初夜】

今年もやってきました!!
彼女できないエンジニアの諸君!!

エンジニアの仕事とは何か!!
今一度問いたい。
君たちの仕事はなんなのかと!!

  • プログラムを書くこと?
  • 仕様の通りにシステムを作る事?

ばかやろう!お客さんや社会、世の中の課題を解決することじゃねぇか!!

「彼女できない」という課題を解決せずして何を解決できるというんだ!!!

行くぞまずは分析からだ!!

 男と女の好み分析

以下は僕のbigdataをグラフ化したもの

男はどんな女性が好きなのか

スクリーンショット 2017-12-01 21.07.48.png

そう!!男なんて顔が可愛けりゃ正直誰でもいいと思ってるだろ!!
(俺はそうは思わない)

グラフにも現れてるけど、ブスを好んで好きになる人なんていない!!
(俺はそうは思わないけどね)

性格とか、フィーリングとかから徐々に好きになることはあっても、ファーストイメージが占める割合が高い!
(そんな単純じゃないと思う俺は)

一方女子はどうだろうか

スクリーンショット 2017-12-01 21.12.42.png

お分り頂けただろうか。
男はかわいい女の子が好きというシンプルなものだったが(僕は例外)、
女子の好みは細分化されている!!!!

決してイケメンがモテるワケではない!!!!

つまり、自分がどのタイプに属するか理解すること。
これがお前の武器になるんだ!!!

ではどうするか

自分の顔がこれらのどの部類に入るか分析しよう。

まず膨大な教師データを集めて。。

スクリーンショット 2017-12-01 21.20.55.png

特徴点をちゅうsh。。。。

クリスマスまで時間がないのでRekognitionを使おう

S3バケットに自分の画像つっこんで、Lambdaでこんな感じに買いて

print('Loading function')

import boto3

def lambda_handler(event, context):
    reko_client = boto3.client('rekognition','us-east-1')
    r = reko_client.detect_faces(
        Image={
            'S3Object': {
                'Bucket': 'onda-test-1234',
                'Name': '俺の顔.jpg'
            }
        },
        Attributes=['ALL']
        )
    print(r)

実行すればでデータが取れる!

{
    "FaceDetails": [{
        "BoundingBox": {
            "Width": 0.10499999672174454,
            "Height": 0.18666666746139526,
            "Left": 0.4312500059604645,
            "Top": 0.057777777314186096
        },
        "AgeRange": {
            "Low": 23,
            "High": 38
        },
        "Smile": {
            "Value": True,
            "Confidence": 57.108856201171875
        },
        "Eyeglasses": {
            "Value": False,
            "Confidence": 99.96912384033203
        },
        "Sunglasses": {
            "Value": False,
            "Confidence": 99.87023162841797
        },
        "Gender": {
            "Value": "Female",
            "Confidence": 100.0
        },
        "Beard": {
            "Value": False,
            "Confidence": 99.96233367919922
        },
        "Mustache": {
            "Value": False,
            "Confidence": 99.77082824707031
        },
        "EyesOpen": {
            "Value": True,
            "Confidence": 99.99246215820312
        },
        "MouthOpen": {
            "Value": False,
            "Confidence": 99.9146728515625
        },
        "Emotions": [{
            "Type": "CALM",
            "Confidence": 82.83368682861328
        }, {
            "Type": "HAPPY",
            "Confidence": 15.994048118591309
        }, {
            "Type": "SAD",
            "Confidence": 3.979891538619995
        }],
        "Landmarks": [{
            "Type": "eyeLeft",
            "X": 0.4645110070705414,
            "Y": 0.1398819535970688
        }, {
            "Type": "eyeRight",
            "X": 0.5005732178688049,
            "Y": 0.13559408485889435
        }, {
            "Type": "nose",
            "X": 0.48266592621803284,
            "Y": 0.17239990830421448
        }, {
            "Type": "mouthLeft",
            "X": 0.47122448682785034,
            "Y": 0.20362448692321777
        }, {
            "Type": "mouthRight",
            "X": 0.4979352056980133,
            "Y": 0.1986924409866333
        }, {
            "Type": "leftPupil",
            "X": 0.46497994661331177,
            "Y": 0.13870377838611603
        }, {
            "Type": "rightPupil",
            "X": 0.5003837943077087,
            "Y": 0.13453131914138794
        }, {
            "Type": "leftEyeBrowLeft",
            "X": 0.45106732845306396,
            "Y": 0.12510329484939575
        }, {
            "Type": "leftEyeBrowUp",
            "X": 0.46162354946136475,
            "Y": 0.1195397600531578
        }, {
            "Type": "leftEyeBrowRight",
            "X": 0.4728100895881653,
            "Y": 0.12344556301832199
        }, {
            "Type": "rightEyeBrowLeft",
            "X": 0.4925210475921631,
            "Y": 0.1216742992401123
        }, {
            "Type": "rightEyeBrowUp",
            "X": 0.5035019516944885,
            "Y": 0.11563356220722198
        }, {
            "Type": "rightEyeBrowRight",
            "X": 0.5140520334243774,
            "Y": 0.11972268670797348
        }, {
            "Type": "leftEyeLeft",
            "X": 0.4573439657688141,
            "Y": 0.1410721391439438
        }, {
            "Type": "leftEyeRight",
            "X": 0.4719408452510834,
            "Y": 0.14020104706287384
        }, {
            "Type": "leftEyeUp",
            "X": 0.46427008509635925,
            "Y": 0.1344168335199356
        }, {
            "Type": "leftEyeDown",
            "X": 0.46462056040763855,
            "Y": 0.14459241926670074
        }, {
            "Type": "rightEyeLeft",
            "X": 0.4931148886680603,
            "Y": 0.13775958120822906
        }, {
            "Type": "rightEyeRight",
            "X": 0.5079139471054077,
            "Y": 0.1350509226322174
        }, {
            "Type": "rightEyeUp",
            "X": 0.5002275705337524,
            "Y": 0.1299990564584732
        }, {
            "Type": "rightEyeDown",
            "X": 0.5009776949882507,
            "Y": 0.140377938747406
        }, {
            "Type": "noseLeft",
            "X": 0.47677117586135864,
            "Y": 0.1822502166032791
        }, {
            "Type": "noseRight",
            "X": 0.48997604846954346,
            "Y": 0.17978978157043457
        }, {
            "Type": "mouthUp",
            "X": 0.4844018518924713,
            "Y": 0.19528257846832275
        }, {
            "Type": "mouthDown",
            "X": 0.48532187938690186,
            "Y": 0.21053189039230347
        }],
        "Pose": {
            "Roll": -4.027588367462158,
            "Yaw": -3.790987253189087,
            "Pitch": -4.375948905944824
        },
        "Quality": {
            "Brightness": 37.62503433227539,
            "Sharpness": 99.9980239868164
        },
        "Confidence": 99.99703979492188
    }],
    "OrientationCorrection": "ROTATE_0",
    "ResponseMetadata": {
        "RequestId": "7272b9b3-d692-11e7-a999-51ef28f1d5b1",
        "HTTPStatusCode": 200,
        "HTTPHeaders": {
            "content-type": "application/x-amz-json-1.1",
            "date": "Fri, 01 Dec 2017 12:23:34 GMT",
            "x-amzn-requestid": "7272b9b3-d692-11e7-a999-51ef28f1d5b1",
            "content-length": "2766",
            "connection": "keep-alive"
        },
        "RetryAttempts": 0
    }
}

注)なぜかFemaleの値が100になってるけど、これは僕がエマワトソンが好きすぎて、俺の顔.jpgといつわってエマワトソンの画像を使ったからである。

こんな感じで簡単にデータが取れる!!

幸せとか悲しいとか穏やかとかそんな感じだけどなんとかなる!!
気になる女の子のタイプの顔を分析し、自分と比較しよう!!
もし、数値が近ければワンチャンあるぞ!!

女の子の好きなタイプとか調査する術もない場合はもうね。
直接聞こう!!

\def\textlarge#1{%
  {\rm\Large #1}
}
\def\textsmall#1{%
  {\rm\scriptsize #1}
}
​​​​​​​​
\textlarge{どんなタイプの人が好きですか?}
\textlarge{JSONで教えて??}

12
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
4