From 1690cfb4cc7b7277afca4016c295927cc4f7fafb Mon Sep 17 00:00:00 2001 From: adamhrv Date: Fri, 14 Dec 2018 17:22:57 +0100 Subject: add pose filter --- .../notebooks/datasets/vgg_face2/filter_pose.ipynb | 1655 ++++++++++++++++++++ 1 file changed, 1655 insertions(+) create mode 100644 megapixels/notebooks/datasets/vgg_face2/filter_pose.ipynb (limited to 'megapixels/notebooks/datasets') diff --git a/megapixels/notebooks/datasets/vgg_face2/filter_pose.ipynb b/megapixels/notebooks/datasets/vgg_face2/filter_pose.ipynb new file mode 100644 index 00000000..34068b82 --- /dev/null +++ b/megapixels/notebooks/datasets/vgg_face2/filter_pose.ipynb @@ -0,0 +1,1655 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Acessing CSV data" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%reload_ext autoreload\n", + "%autoreload 2\n", + "\n", + "import os\n", + "from os.path import join\n", + "from glob import glob\n", + "from random import randint\n", + "from pathlib import Path\n", + "\n", + "from tqdm import tqdm_notebook as tqdm\n", + "import numpy as np\n", + "import pandas as pd\n", + "import cv2 as cv\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "DATA_STORE = '/data_store/'\n", + "dir_datasets = join(DATA_STORE, 'datasets/people')\n", + "dir_lfw = join(dir_datasets, 'vgg_face2')\n", + "dir_lfw_metadata = join(dir_lfw, 'metadata')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Files" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "# set fp_\n", + "fp_identities = join(dir_lfw_metadata, 'identities.csv')\n", + "fp_files = join(dir_lfw_metadata, 'file_meta_updated.csv')\n", + "fp_index = join(dir_lfw_metadata, 'shas.csv')\n", + "fp_rois = join(dir_lfw_metadata, 'rois_dlib_cnn_400.csv')\n", + "fp_uuids = join(dir_lfw_metadata, 'uuids.csv')\n", + "#fp_poses = join(dir_lfw_metadata, 'poses.csv')\n", + "fp_vecs = join(dir_lfw_metadata, 'vecs.csv')" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "# load csvs into dataframes\n", + "df_identities = pd.read_csv(fp_identities).set_index('index')\n", + "df_files = pd.read_csv(fp_files).set_index('index')\n", + "df_index = pd.read_csv(fp_index).set_index('index')\n", + "df_rois = pd.read_csv(fp_rois).set_index('index')\n", + "df_uuids = pd.read_csv(fp_uuids).set_index('index')\n", + "#df_poses = pd.read_csv(fp_pose).set_index('index')\n", + "#df_vecs = pd.read_csv(fp_vecs).set_index('index')" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "fp_poses = join(dir_lfw_metadata, 'poses_0_10000.csv')\n", + "df_poses = pd.read_csv(fp_poses).set_index('index')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Identity attributes\n", + "\n", + "- preview identities\n", + "- here the 'index' is unique and refers to the identity\n", + "- in other files it is referred to as 'identity_index'" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
class_iddescriptiongenderimagesname
index
0n000001Dalai Lamam42414th Dalai Lama
1n000002American singer-songwriterf315A Fine Frenzy
\n", + "
" + ], + "text/plain": [ + " class_id description gender images name\n", + "index \n", + "0 n000001 Dalai Lama m 424 14th Dalai Lama\n", + "1 n000002 American singer-songwriter f 315 A Fine Frenzy" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_identities.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### File attributes\n", + "\n", + "- preview files\n", + "- NB: this information is not needed for the website\n", + "- information needed to load an image from the local directory" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
extfnsubdir
index
0jpg0194_01train/n004034
1jpg0132_02train/n004034
\n", + "
" + ], + "text/plain": [ + " ext fn subdir\n", + "index \n", + "0 jpg 0194_01 train/n004034\n", + "1 jpg 0132_02 train/n004034" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_files.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Index\n", + "\n", + "- every image has an index\n", + "- the `identity_index` refers back to the `identities.csv` file" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
sha256identity_index
index
0a39a1df855cb0c70dc553c5e9afa35b4f7c00f4011ca10...6123
1e360f93613baa68cede6731d2603873cdabd3993841cfd...6123
\n", + "
" + ], + "text/plain": [ + " sha256 identity_index\n", + "index \n", + "0 a39a1df855cb0c70dc553c5e9afa35b4f7c00f4011ca10... 6123\n", + "1 e360f93613baa68cede6731d2603873cdabd3993841cfd... 6123" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_index.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### ROIs (regions of interest)\n", + "\n", + "- refers to the detected face in image files" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
himage_heightimage_indeximage_widthwxy
index
00.3828202470.4351150.286260.316667
10.3823512060.4351150.286260.316667
\n", + "
" + ], + "text/plain": [ + " h image_height image_index image_width w x \\\n", + "index \n", + "0 0.38 282 0 247 0.435115 0.28626 \n", + "1 0.38 235 1 206 0.435115 0.28626 \n", + "\n", + " y \n", + "index \n", + "0 0.316667 \n", + "1 0.316667 " + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_rois.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### UUIDs\n", + "\n", + "- a separate file that includes the UUID for each image file\n", + "- separated to reduce file size for larger CSVs" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
uuid
index
088ac6abd-6039-442b-b31f-2db8d575363a
173acbc00-2cb5-4260-8db3-b88ca7c29c72
\n", + "
" + ], + "text/plain": [ + " uuid\n", + "index \n", + "0 88ac6abd-6039-442b-b31f-2db8d575363a\n", + "1 73acbc00-2cb5-4260-8db3-b88ca7c29c72" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_uuids.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Pose\n", + "\n", + "- a separate file that includes pose information\n", + "- used for filtering out images that are too angled" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
image_indexpitchrollyaw
index
00-2.6857694.093920-7.937658
11-10.074321-5.795005-20.644645
\n", + "
" + ], + "text/plain": [ + " image_index pitch roll yaw\n", + "index \n", + "0 0 -2.685769 4.093920 -7.937658\n", + "1 1 -10.074321 -5.795005 -20.644645" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_poses.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Face vectors\n", + "\n", + "- each face vector is associated with an ROI\n", + "- each ROI is associated with an image and an identity" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "#df_vecs.head(2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Utilities" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# convert above to function\n", + "def roi_idx_to_image(roi_idx):\n", + " ds_roi = df_rois.iloc[roi_idx]\n", + " image_idx = int(ds_roi.image_index)\n", + " # use the image idx to get the file meta\n", + " ds_file = df_files.iloc[image_idx]\n", + " # construct filepath\n", + " fp_match = join(dir_lfw_images, str(ds_file.subdir), f'{ds_file.fn}.{ds_file.ext}')\n", + " im_match = cv.imread(fp_match)\n", + " return im_match " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Operations" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "# define min/max\n", + "yaw_minmax = (-25,25)\n", + "pitch_minmax = (-15,15)\n", + "roll_minmax = (-10,10)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
image_indexpitchrollyawvalid
index
00-2.6857694.093920-7.9376580
11-10.074321-5.795005-20.6446450
\n", + "
" + ], + "text/plain": [ + " image_index pitch roll yaw valid\n", + "index \n", + "0 0 -2.685769 4.093920 -7.937658 0\n", + "1 1 -10.074321 -5.795005 -20.644645 0" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_poses['valid'] = [0] * len(df_poses)\n", + "df_poses.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "9347980a72ff4cb6906914338b458162", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(IntProgress(value=0, max=9743), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# filter out extreme poses\n", + "for ds_pose in tqdm(df_poses.itertuples(), total=len(df_poses)):\n", + " if ds_pose.yaw > yaw_minmax[0] and ds_pose.yaw < yaw_minmax[1] \\\n", + " and ds_pose.roll > roll_minmax[0] and ds_pose.roll < roll_minmax[1] \\\n", + " and ds_pose.pitch > pitch_minmax[0] and ds_pose.pitch < pitch_minmax[1]:\n", + " df_poses.at[ds_pose.Index, 'valid'] = 1" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
image_indexpitchrollyawvalid
index
00-2.6857694.093920-7.9376581
11-10.074321-5.795005-20.6446451
221.9497787.510585-1.1539381
33-5.8810883.305987-16.7744521
441.3234553.55210910.9370921
558.966770-20.319039-10.6666220
666.377947-0.037838-28.2977690
77-5.590547-2.513488-5.5739861
887.494141-0.587338-20.9372421
99-4.547006-0.4293754.6379641
1010-15.974450-6.467474-0.0468170
1111-3.349299-4.059317-4.7090071
1212-0.8249681.082679-14.2015741
13137.317298-4.628597-5.5037311
1414-0.2506377.1687053.5932671
1515-1.247407-16.101818-19.0725480
16166.184959-18.960907-14.4351080
17170.69517410.41111618.0992050
1818-1.3946461.553670-13.2431771
191910.3294186.05760417.5097711
2020-6.514906-4.05768532.2859180
2121-3.4127183.160722-15.9984101
2222-2.7106593.4826328.0596921
2323-6.92288115.77162532.0974140
2424-12.6929170.50214839.7679560
2525-3.05050626.28857622.4740470
2626-6.7423652.603335-3.1702231
2727-2.87990818.60269226.7725430
2828-3.475686-4.734540-12.3011761
2929-4.0394270.8049752.2262191
..................
70709.677210-3.644432-3.5588061
7171-6.304012-4.870216-35.1148340
7272-22.009094-21.959437-27.3932760
73732.3127464.491569-2.4171031
7474-13.938552-3.28488625.4666610
757516.797612-8.401607-6.6802540
76762.383204-2.540481-14.4265001
7777-4.1245934.30495815.8455301
7878-5.54321811.19056326.6715790
79790.397213-7.920712-28.4444600
80801.6679426.1362898.4151161
81814.62435917.670332-21.9051380
8282-0.969493-0.082283-11.9967881
83830.471210-18.823352-26.9386270
8484-6.293694-0.578364-26.8486600
8585-13.9586831.11901410.5993171
8686-10.010660-26.79743629.6871030
8787-4.6563482.832306-25.9072910
8888-9.6679768.49960322.9871711
89899.94692228.68467735.8656120
9090-6.6966065.2265738.4606411
9191-6.477469-1.916388-26.7148400
9292-8.2981552.883102-14.6124491
939310.3221170.795814-28.9881450
9494-2.210425-8.356827-14.5432181
9595-3.9960753.014513-35.6065010
9696-10.600538-8.428299-26.0607040
9797-3.0346762.865267-0.0719171
9898-0.0547091.202667-11.3618231
9999-10.3770324.90215729.3750200
\n", + "

100 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " image_index pitch roll yaw valid\n", + "index \n", + "0 0 -2.685769 4.093920 -7.937658 1\n", + "1 1 -10.074321 -5.795005 -20.644645 1\n", + "2 2 1.949778 7.510585 -1.153938 1\n", + "3 3 -5.881088 3.305987 -16.774452 1\n", + "4 4 1.323455 3.552109 10.937092 1\n", + "5 5 8.966770 -20.319039 -10.666622 0\n", + "6 6 6.377947 -0.037838 -28.297769 0\n", + "7 7 -5.590547 -2.513488 -5.573986 1\n", + "8 8 7.494141 -0.587338 -20.937242 1\n", + "9 9 -4.547006 -0.429375 4.637964 1\n", + "10 10 -15.974450 -6.467474 -0.046817 0\n", + "11 11 -3.349299 -4.059317 -4.709007 1\n", + "12 12 -0.824968 1.082679 -14.201574 1\n", + "13 13 7.317298 -4.628597 -5.503731 1\n", + "14 14 -0.250637 7.168705 3.593267 1\n", + "15 15 -1.247407 -16.101818 -19.072548 0\n", + "16 16 6.184959 -18.960907 -14.435108 0\n", + "17 17 0.695174 10.411116 18.099205 0\n", + "18 18 -1.394646 1.553670 -13.243177 1\n", + "19 19 10.329418 6.057604 17.509771 1\n", + "20 20 -6.514906 -4.057685 32.285918 0\n", + "21 21 -3.412718 3.160722 -15.998410 1\n", + "22 22 -2.710659 3.482632 8.059692 1\n", + "23 23 -6.922881 15.771625 32.097414 0\n", + "24 24 -12.692917 0.502148 39.767956 0\n", + "25 25 -3.050506 26.288576 22.474047 0\n", + "26 26 -6.742365 2.603335 -3.170223 1\n", + "27 27 -2.879908 18.602692 26.772543 0\n", + "28 28 -3.475686 -4.734540 -12.301176 1\n", + "29 29 -4.039427 0.804975 2.226219 1\n", + "... ... ... ... ... ...\n", + "70 70 9.677210 -3.644432 -3.558806 1\n", + "71 71 -6.304012 -4.870216 -35.114834 0\n", + "72 72 -22.009094 -21.959437 -27.393276 0\n", + "73 73 2.312746 4.491569 -2.417103 1\n", + "74 74 -13.938552 -3.284886 25.466661 0\n", + "75 75 16.797612 -8.401607 -6.680254 0\n", + "76 76 2.383204 -2.540481 -14.426500 1\n", + "77 77 -4.124593 4.304958 15.845530 1\n", + "78 78 -5.543218 11.190563 26.671579 0\n", + "79 79 0.397213 -7.920712 -28.444460 0\n", + "80 80 1.667942 6.136289 8.415116 1\n", + "81 81 4.624359 17.670332 -21.905138 0\n", + "82 82 -0.969493 -0.082283 -11.996788 1\n", + "83 83 0.471210 -18.823352 -26.938627 0\n", + "84 84 -6.293694 -0.578364 -26.848660 0\n", + "85 85 -13.958683 1.119014 10.599317 1\n", + "86 86 -10.010660 -26.797436 29.687103 0\n", + "87 87 -4.656348 2.832306 -25.907291 0\n", + "88 88 -9.667976 8.499603 22.987171 1\n", + "89 89 9.946922 28.684677 35.865612 0\n", + "90 90 -6.696606 5.226573 8.460641 1\n", + "91 91 -6.477469 -1.916388 -26.714840 0\n", + "92 92 -8.298155 2.883102 -14.612449 1\n", + "93 93 10.322117 0.795814 -28.988145 0\n", + "94 94 -2.210425 -8.356827 -14.543218 1\n", + "95 95 -3.996075 3.014513 -35.606501 0\n", + "96 96 -10.600538 -8.428299 -26.060704 0\n", + "97 97 -3.034676 2.865267 -0.071917 1\n", + "98 98 -0.054709 1.202667 -11.361823 1\n", + "99 99 -10.377032 4.902157 29.375020 0\n", + "\n", + "[100 rows x 5 columns]" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_poses.head(100)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "#df_poses_valid = df_poses[df_poses['valid'] == 1]\n", + "df_poses_valid = df_poses.drop(df_poses[df_poses.valid == 0].index, axis=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
image_indexpitchrollyawvalid
index
00-2.6857694.093920-7.9376581
11-10.074321-5.795005-20.6446451
221.9497787.510585-1.1539381
33-5.8810883.305987-16.7744521
441.3234553.55210910.9370921
\n", + "
" + ], + "text/plain": [ + " image_index pitch roll yaw valid\n", + "index \n", + "0 0 -2.685769 4.093920 -7.937658 1\n", + "1 1 -10.074321 -5.795005 -20.644645 1\n", + "2 2 1.949778 7.510585 -1.153938 1\n", + "3 3 -5.881088 3.305987 -16.774452 1\n", + "4 4 1.323455 3.552109 10.937092 1" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_poses.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "pandas.core.frame.DataFrame" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(df_poses_valid)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
image_indexpitchrollyawvalid
index
00-2.6857694.093920-7.9376581
11-10.074321-5.795005-20.6446451
221.9497787.510585-1.1539381
33-5.8810883.305987-16.7744521
441.3234553.55210910.9370921
\n", + "
" + ], + "text/plain": [ + " image_index pitch roll yaw valid\n", + "index \n", + "0 0 -2.685769 4.093920 -7.937658 1\n", + "1 1 -10.074321 -5.795005 -20.644645 1\n", + "2 2 1.949778 7.510585 -1.153938 1\n", + "3 3 -5.881088 3.305987 -16.774452 1\n", + "4 4 1.323455 3.552109 10.937092 1" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_poses_valid.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:megapixels]", + "language": "python", + "name": "conda-env-megapixels-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.6" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} -- cgit v1.2.3-70-g09d2