Skip to content

Instantly share code, notes, and snippets.

@papr
Last active December 10, 2019 22:25
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save papr/743784a4510a95d6f462970bd1c23972 to your computer and use it in GitHub Desktop.
Save papr/743784a4510a95d6f462970bd1c23972 to your computer and use it in GitHub Desktop.
Extract 2d and 3d (if available) pupil diameters for a set of given recordings. The resulting csv file will be saved within its according recording.
import argparse
import csv
import logging
import os
import traceback as tb
import numpy as np
import msgpack
logger = logging.getLogger(__name__)
def main(recordings, csv_out, overwrite=False):
"""Process given recordings one by one
Iterates over each recording and handles cases where no pupil.pldata or
pupil_timestamps.npy files could be found.
recordings: List of recording folders
csv_out: CSV file name under which the result will be saved
"""
for rec in recordings:
try:
logger.info("Extracting {}...".format(rec))
process_recording(rec, csv_out, overwrite=overwrite)
except FileNotFoundError:
logger.warning(
(
"The recording {} did not include any prerecorded pupil files!"
).format(rec)
)
logger.debug(tb.format_exc())
def process_recording(recording, csv_out, overwrite=False):
"""Process a single recording
recordings: List of recording folders
csv_out: CSV file name under which the result will be saved
overwrite: Boolean indicating if an existing csv file should be overwritten
"""
csv_out_path = os.path.join(recording, csv_out)
if os.path.exists(csv_out_path):
if not overwrite:
logger.warning("{} exists already! Not overwriting.".format(csv_out_path))
return
else:
logger.warning("{} exists already! Overwriting.".format(csv_out_path))
with open(csv_out_path, "w") as csv_file:
writer = csv.writer(csv_file, dialect=csv.unix_dialect)
writer.writerow(csv_header())
extracted_rows = load_and_yield_data(recording)
writer.writerows(extracted_rows)
def csv_header():
"""CSV header fields"""
return (
"eye_id",
"timestamp",
"topic",
"confidence",
"diameter_2d [px]",
"diameter_3d [mm]",
)
def load_and_yield_data(directory, topic="pupil"):
"""Load and extract pupil diameter data
See the data format documentation[2] for details on the data structure.
Adapted open-source code from Pupil Player[1] to read pldata files.
Removed the usage of Serialized_Dicts since this script has the sole purpose
of running through the data once.
[1] https://github.com/pupil-labs/pupil/blob/master/pupil_src/shared_modules/file_methods.py#L137-L153
[2] https://docs.pupil-labs.com/#data-files
"""
ts_file = os.path.join(directory, topic + "_timestamps.npy")
data_ts = np.load(ts_file)
msgpack_file = os.path.join(directory, topic + ".pldata")
with open(msgpack_file, "rb") as fh:
unpacker = msgpack.Unpacker(fh, raw=False, use_list=False)
for timestamp, (topic, payload) in zip(data_ts, unpacker):
datum = deserialize_msgpack(payload)
# custom extraction function for pupil data, see below for details
eye_id, conf, dia_2d, dia_3d = extract_eyeid_diameters(datum)
# yield data according to csv_header() sequence
yield (eye_id, timestamp, topic, conf, dia_2d, dia_3d)
def extract_eyeid_diameters(pupil_datum):
"""Extract data for a given pupil datum
Returns: tuple(eye_id, confidence, diameter_2d, and diameter_3d)
"""
return (
pupil_datum["id"],
pupil_datum["confidence"],
pupil_datum["diameter"],
pupil_datum.get("diameter_3d", 0.0),
)
def deserialize_msgpack(msgpack_bytes):
"""Deserialize msgpack[1] data
[1] https://msgpack.org/index.html
"""
return msgpack.unpackb(msgpack_bytes, raw=False, use_list=False)
if __name__ == "__main__":
# setup logging
logging.basicConfig(level=logging.DEBUG)
# setup command line interface
parser = argparse.ArgumentParser(
description=(
"Extract 2d and 3d (if available) "
"pupil diameters for a set of given recordings. "
"The resulting csv file will be saved within its "
"according recording."
)
)
parser.add_argument(
"--out",
help="CSV file name containing the extracted data",
default="extracted_diameter.csv",
)
parser.add_argument(
"-f",
"--overwrite",
action="store_true",
help=(
"Usually, the command refuses to overwrite existing csv files. "
"This flag disables these checks."
),
)
parser.add_argument("recordings", nargs="+", help="One or more recordings")
# parse command line arguments and start the main procedure
args = parser.parse_args()
main(recordings=args.recordings, csv_out=args.out, overwrite=args.overwrite)
eye_id timestamp topic confidence diameter_2d [px] diameter_3d [mm]
0 4682.661837 pupil.0 0.9991380327684991 87.44727554521752 4.204487962341446
1 4682.670559 pupil.1 0.9986435830668804 87.85457729250604 4.089652929560017
0 4682.678637 pupil.0 0.9991765386427652 87.28516362304234 4.196578289089249
1 4682.687359 pupil.1 0.9987375139201063 88.0955268580668 4.100309338445812
0 4682.695437 pupil.0 0.9990033257102098 87.34867166119135 4.2001714262398275
1 4682.704159 pupil.1 0.9987548151731274 87.66616488416953 4.080902422367001
0 4682.712237 pupil.0 0.9953191793697888 87.33350768291893 4.199601140529594
1 4682.720959 pupil.1 0.9988451731242429 87.89719294347123 4.092621321624993
0 4682.729037 pupil.0 0.994615583789583 87.42624207061075 4.204139313777037
1 4682.737759 pupil.1 0.999441183730963 88.10239226364276 4.101803930666423
0 4682.745837 pupil.0 0.9942214888151136 87.77998426264568 4.221706433959041
1 4682.754559 pupil.1 0.9991314692601303 87.68641845207512 4.082714689294248
0 4682.762637 pupil.0 0.9988278763638183 87.37987222231466 4.202320142561374
1 4682.771359 pupil.1 0.9985779595478679 88.54493547408595 4.123070058986721
0 4682.779437 pupil.0 0.9922262814578044 87.35674564808069 4.201601095494244
1 4682.788159 pupil.1 0.9986487042444908 88.15504811228986 4.104993269386011
0 4682.796237 pupil.0 0.9982148168157593 87.0236598242604 4.18561713217846
1 4682.804959 pupil.1 0.9984305079415352 88.53427978202548 4.1228099762678045
0 4682.813037 pupil.0 0.9853784207183972 87.19733922799223 4.193105903544497
1 4682.821759 pupil.1 0.9991673728974838 88.04266368482008 4.099969891539414
0 4682.829837 pupil.0 0.9886280634718407 87.71202119443304 4.216926663462035
1 4682.838559 pupil.1 0.998012506320486 88.94273929435839 4.141074580851763
0 4682.846637 pupil.0 0.9687111715870453 88.17864988130721 4.239959475851033
1 4682.855359 pupil.1 0.9990971032397099 87.94696929541911 4.095026411990455
0 4682.863437 pupil.0 0.998757748480777 87.50150796355474 4.20756825433002
1 4682.872159 pupil.1 0.9994172175998101 87.73125015701885 4.085315585125744
0 4682.880237 pupil.0 0.9664539487341672 88.21758463092762 4.242519404206434
1 4682.888959 pupil.1 0.9990870076488567 88.43852661807593 4.117777518492312
0 4682.897037 pupil.0 0.9982333730757612 87.98457096999087 4.231495411975312
1 4682.905759 pupil.1 0.27880552632768313 85.63871943497958 3.998293719260105
1 4682.922559 pupil.1 0.36057561373861347 85.36963621676186 4.009250549651387
0 4682.913837 pupil.0 0.7163935427553827 89.60052771131028 4.311600346931277
0 4682.930637 pupil.0 0.309941415389652 85.3556570550199 4.112837134244641
1 4682.939359 pupil.1 0.9955719330806108 90.49139063492113 4.25665925814558
0 4682.947437 pupil.0 0.26096334006994953 84.4996144540965 4.082797025710661
1 -0.03188999999929365 pupil.1 0.0 0.0 0.0
0 -0.023811999999452382 pupil.0 0.792223692745491 86.31459849341502 4.17668569869084
0 -0.0070120000000315486 pupil.0 0.9970729387900779 86.38408857294834 4.182882571463209
1 -0.015089999999872816 pupil.1 0.8881724261942444 88.25593930581755 4.182397233901982
1 0.0017100000004575122 pupil.1 0.9990364519687825 88.13313097688983 4.174440298187637
0 0.00978800000029878 pupil.0 0.9960998493495418 85.79438186350963 4.155504421523683
1 0.01851000000078784 pupil.1 0.9986000992042212 88.55438406824096 4.192209528293156
0 0.02658800000062911 pupil.0 0.9985637827652077 86.08643153583661 4.17054970711102
1 0.035310000000208674 pupil.1 0.9988758336574516 88.13635055983161 4.170782348493044
0 0.04338800000004994 pupil.0 0.9985976162600145 86.12806982974558 4.173269474325831
1 0.052110000000539 pupil.1 0.9982988904117617 87.81849624107815 4.162760104210411
0 0.06018800000038027 pupil.0 0.9984864712632167 86.23662994511588 4.178005890712129
1 0.06890999999995984 pupil.1 0.9987941730064277 88.23282029306044 4.182893189016387
0 0.0769880000007106 pupil.0 0.9993719474930735 86.08308303726534 4.172128277342201
1 0.08571000000029017 pupil.1 0.9973044655055386 88.85009429471154 4.213291841539505
0 0.09378800000013143 pupil.0 0.996701091823276 87.12343121700212 4.222042517202875
1 0.1025100000006205 pupil.1 0.9984190111397989 89.02298182354087 4.2214469736838565
0 0.11058800000046176 pupil.0 0.9984485366021747 86.58477838233006 4.196722780994782
1 0.11931000000004133 pupil.1 0.9981472395273923 89.14752041221635 4.22775524596908
0 0.1273880000007921 pupil.0 0.998240992025453 86.35593748518677 4.185060242739266
1 0.13611000000037166 pupil.1 0.9984738514233577 88.7685771523676 4.210984610552138
0 0.14418800000021292 pupil.0 0.9982554245015035 86.44771235131287 4.189730242243577
1 0.15291000000070198 pupil.1 0.9982564232598927 89.65716610969261 4.253037091882907
0 0.16098800000054325 pupil.0 0.9974575549307948 86.99280935375008 4.215525977052707
1 0.16971000000012282 pupil.1 0.9987583870589503 88.74252237225913 4.206614087655426
0 0.17778799999996409 pupil.0 0.9990042586776883 87.18066213686046 4.223313216496149
1 0.18651000000045315 pupil.1 0.9981666484266919 88.7662135794554 4.207294774036503
0 0.19458800000029441 pupil.0 0.9982195374065785 86.67092587885432 4.198455825953229
1 0.20331000000078348 pupil.1 0.9983104640410136 88.85722681581612 4.209594954975673
0 0.21138800000062474 pupil.0 0.9978164622844956 86.69975305843988 4.200187299610234
1 0.2201100000002043 pupil.1 0.9983251187562476 89.15566631314027 4.223140412844037
0 0.22818800000004558 pupil.0 0.9964220941055005 86.82393992435142 4.20690479387327
1 0.23691000000053464 pupil.1 0.9978865358489206 88.86349984873513 4.20813904591131
0 0.2449880000003759 pupil.0 0.9968129524148761 86.67307782400273 4.201397802275638
1 0.25370999999995547 pupil.1 0.35183729500299016 86.85136723705179 4.116625684059298
0 0.26178800000070623 pupil.0 0.274133149726667 85.52435500378562 4.15213170365192
1 0.2705100000002858 pupil.1 0.0 0.0 0.0
0 0.27858800000012707 pupil.0 0.0 0.0 0.0
1 0.28731000000061613 pupil.1 0.0 0.0 0.0
0 0.2953880000004574 pupil.0 0.0 0.0 0.0
1 0.30411000000003696 pupil.1 0.0 0.0 0.0
0 0.3121880000007877 pupil.0 0.0 0.0 0.0
1 0.3209100000003673 pupil.1 0.0 0.0 0.0
0 0.32898800000020856 pupil.0 0.0 0.0 0.0
1 0.3377100000006976 pupil.1 0.0 0.0 0.0
0 0.3457880000005389 pupil.0 0.0 0.0 0.0
1 0.35451000000011845 pupil.1 0.0 0.0 0.0
0 0.3625879999999597 pupil.0 0.0 0.0 0.0
1 0.3713100000004488 pupil.1 0.10550025907093108 85.55917784786364 4.109283711497489
0 0.37938800000029005 pupil.0 0.04422041188980242 84.41673298390431 4.123850747216598
1 0.3881100000007791 pupil.1 0.0647145915290985 84.90722134848808 4.0756263226993585
0 0.3961880000006204 pupil.0 0.02657476315815738 86.60738758414925 4.130931624466583
1 0.40491000000019994 pupil.1 0.04795028134112293 87.43412677801624 4.087457787293307
0 0.4129880000000412 pupil.0 0.17980034060276825 87.79155820099288 4.152444994317668
1 0.42171000000053027 pupil.1 0.13145405782220693 87.9401512695286 4.119061710716789
0 0.42978800000037154 pupil.0 0.2802531688178675 85.52192023729941 4.107496583123382
1 0.4385100000008606 pupil.1 0.1576313410675948 89.51772052579581 4.096007279792431
0 0.44658800000070187 pupil.0 0.36413179217835046 86.02163621857368 4.1326392114685015
1 0.45531000000028143 pupil.1 0.254218449293317 88.105598801171 4.108556586980352
1 0.47211000000061176 pupil.1 0.3575651357319912 87.89642029832521 4.0999889644437255
0 0.4633880000001227 pupil.0 0.5027563435797796 86.0399727567474 4.130796548346575
0 0.48018800000045303 pupil.0 0.44768639696060336 86.29668833641689 4.14336028596501
1 0.4889100000000326 pupil.1 0.3830104375258532 87.61421912150908 4.086895224865986
0 0.49698800000078336 pupil.0 0.776769184511132 87.37563232614065 4.193115098022188
1 0.5057100000003629 pupil.1 0.4610007519516737 88.0370964912476 4.107276033427221
0 0.5137880000002042 pupil.0 0.9973639706045144 87.11513343145378 4.181698527587301
1 0.5225100000006933 pupil.1 0.9324461755632055 88.42372773448639 4.116677651487863
0 0.5305880000005345 pupil.0 0.9974227352544796 87.31912907397786 4.192636638577355
1 0.5393100000001141 pupil.1 0.997312858534553 87.87888880807584 4.089536209836211
0 0.5473879999999554 pupil.0 0.997123742899527 88.1443135355252 4.2326968384768024
1 0.5561100000004444 pupil.1 0.995651863728986 88.07295828934723 4.099575995210286
0 0.5641880000002857 pupil.0 0.9974595766738802 88.50482684383577 4.2498757644058145
1 0.5729100000007747 pupil.1 0.9358078707144448 88.10648919676343 4.100834249637206
0 0.580988000000616 pupil.0 0.9974003452011304 88.88416097402519 4.26948933897058
1 0.5897100000001956 pupil.1 0.9969327413347784 88.0888861105686 4.100849644905023
0 0.5977880000000368 pupil.0 0.9971803574282033 88.77476564134224 4.26385789109616
1 0.6065100000005259 pupil.1 0.9977346019679154 88.44796394471585 4.118108868420146
0 0.6145880000003672 pupil.0 0.9958756194612658 89.06080909090961 4.278984947318501
1 0.6233100000008562 pupil.1 0.9979486409404643 87.79731323840704 4.087943654589473
0 0.6313880000006975 pupil.0 0.9967737392747693 88.78495535894626 4.264234303846483
1 0.6401100000002771 pupil.1 0.9974819507617001 88.29518150999654 4.111575301354293
0 0.6481880000001183 pupil.0 0.9964940736946277 89.07943011253333 4.278058924828847
1 0.6569100000006074 pupil.1 0.9974978055047307 88.9233065104784 4.140636278742759
0 0.6649880000004487 pupil.0 0.9964921978718635 89.20656946914656 4.284365053282358
1 0.6737100000000282 pupil.1 0.9974928809992696 89.03113283283308 4.143949251154446
0 0.681788000000779 pupil.0 0.9953134622707207 89.39626958179782 4.293423895116151
1 0.6905100000003586 pupil.1 0.9973197138152615 88.6873985976074 4.128172655825146
0 0.6985880000001998 pupil.0 0.9956699212996454 89.91121868018384 4.317797749652036
1 0.7073100000006889 pupil.1 0.9970317991561555 88.95901267498004 4.140235624636003
0 0.7153880000005302 pupil.0 0.9959875504000265 90.42178603229833 4.341761796304971
1 0.7241100000001097 pupil.1 0.9981625996527612 89.47051960419763 4.164634957509995
0 0.7321880000008605 pupil.0 0.9959077105058227 90.71621793128456 4.354144349413291
1 0.74091000000044 pupil.1 0.9968598005245934 90.23334991402685 4.197633122984767
0 0.7489880000002813 pupil.0 0.997446240795983 89.85106294785575 4.313064452526602
1 0.7577100000007704 pupil.1 0.9974270820241984 89.92453973739543 4.183265136143829
0 0.7657880000006116 pupil.0 0.9966414078995733 90.20018556328496 4.328780766397487
1 0.7745100000001912 pupil.1 0.996931419071402 90.08709739394364 4.190627460182283
0 0.7825880000000325 pupil.0 0.9973168039379915 90.74014176916654 4.3535572236909355
1 0.7913100000005215 pupil.1 0.996968371794677 89.81527786290201 4.1783081017062935
0 0.7993880000003628 pupil.0 0.9965253134744897 90.84768385563454 4.358307394742244
1 0.8081100000008519 pupil.1 0.9980259571193109 90.06662536278684 4.186920018324649
0 0.8161880000006931 pupil.0 0.9362158192411887 90.15163140556804 4.323032888954663
0 0.832988000000114 pupil.0 0.946500860232526 91.02912271071548 4.343889586569525
1 0.8249100000002727 pupil.1 0.9102976755132177 91.84741480705776 4.2439671221776765
1 0.841710000000603 pupil.1 0.9926161902335322 92.41355949899427 4.2431055356568494
0 0.8497880000004443 pupil.0 0.38088462808352475 88.7477492274091 4.224483634517486
1 0.8585100000000239 pupil.1 0.997712066067916 91.77172669204563 4.209476369240832
0 0.8665880000007746 pupil.0 0.9985178623053176 92.49089838691822 4.390640158977061
1 0.8753100000003542 pupil.1 0.997767933770466 92.19608841995708 4.227482382819603
0 0.8833880000001955 pupil.0 0.998941395485404 91.91243424944945 4.36303156092445
1 0.8921100000006845 pupil.1 0.9980501156939381 91.81465274918229 4.209804757592403
0 0.9001880000005258 pupil.0 0.9988238683804089 91.60787996754823 4.34790101419767
1 0.9089100000001054 pupil.1 0.9985073262929384 91.92165597080498 4.215744771699845
0 0.9169880000008561 pupil.0 0.9982432799824885 91.91922533721086 4.363191347914793
1 0.9257100000004357 pupil.1 0.9969471912219269 92.99122980343867 4.265430942890652
0 0.933788000000277 pupil.0 0.9983460178175184 92.26096983556103 4.379874991094329
1 0.942510000000766 pupil.1 0.9972992069193316 92.69534103948197 4.252137222713755
0 0.9505880000006073 pupil.0 0.9978713138299682 92.00720568595477 4.367034439544056
1 0.9593100000001868 pupil.1 0.9965089363174381 92.59401723279151 4.247120720716519
0 0.9673880000000281 pupil.0 0.9975512597367526 92.19329927780531 4.375890000551446
1 0.9761100000005172 pupil.1 0.9944446300513452 92.59956941739036 4.248315804025432
0 0.9841880000003584 pupil.0 0.9974721095691854 92.57197831322273 4.3935846485411645
1 0.9929100000008475 pupil.1 0.9975430268651051 92.99144280873698 4.265951078315911
0 1.0009880000006888 pupil.0 0.9978473764706584 92.65790582610873 4.398019900155879
1 1.0097100000002683 pupil.1 0.9965345753895333 93.36615579797991 4.283423065028168
0 1.0177880000001096 pupil.0 0.9977717723718027 92.47814150367032 4.389832949340096
1 1.0265100000005987 pupil.1 0.9967705295149618 93.58469405778877 4.293384511187584
0 1.03458800000044 pupil.0 0.9975551399326308 92.72992102002905 4.40153484741364
1 1.0433100000000195 pupil.1 0.997060625290346 93.4446461119388 4.2856673945374215
0 1.0513880000007703 pupil.0 0.9975242530486825 92.74307630538338 4.402416992212246
1 1.0601100000003498 pupil.1 0.9621632727148509 93.27987285963086 4.277702891101243
0 1.068188000000191 pupil.0 0.9978272480891708 93.11156372723354 4.4192984545416785
1 1.0769100000006802 pupil.1 0.997410479394195 92.98518054637513 4.266425555150582
0 1.0849880000005214 pupil.0 0.9965652467563244 93.2063920037128 4.425239020627381
1 1.093710000000101 pupil.1 0.35573759199746974 90.44368794993115 4.187682878805079
0 1.1017880000008518 pupil.0 0.44428285476086593 89.79737145086274 4.2900216705662695
1 1.1105100000004313 pupil.1 0.9937165438838145 92.8332584208207 4.299714499486873
1 1.1273100000007616 pupil.1 0.997145676077774 92.47188871089463 4.281628966016182
0 1.1185880000002726 pupil.0 0.9144373048730616 91.3159330735097 4.360331386056438
0 1.135388000000603 pupil.0 0.99619464415018 91.98743564536512 4.39020139118459
1 1.1441100000001825 pupil.1 0.9959725035821547 92.99932442595743 4.305353700250482
0 1.1521880000000237 pupil.0 0.9970118676752624 91.55645777183898 4.369608063290091
1 1.1609100000005128 pupil.1 0.9969878416696528 92.43108191546152 4.277267052652435
0 1.168988000000354 pupil.0 0.9971740222134731 91.45020794253958 4.365618478778264
1 1.1777100000008431 pupil.1 0.9968109891662581 93.12687787402419 4.309047333654679
0 1.1857880000006844 pupil.0 0.9986639243935798 91.43297556210155 4.363621878672289
1 1.194510000000264 pupil.1 0.9978937488066598 92.55467056431128 4.282847733509782
0 1.2025880000001052 pupil.0 0.9984843220053531 91.7519217745973 4.378169312556376
1 1.2113100000005943 pupil.1 0.9963967117521919 92.2308115170178 4.266863399876574
0 1.2193880000004356 pupil.0 0.9973617317591041 92.3455945912887 4.405656461108595
1 1.2281100000000151 pupil.1 0.9963713904674887 92.60327538885785 4.283081814708662
0 1.236188000000766 pupil.0 0.9989623808357793 91.23800926479679 4.352813803581342
1 1.2449100000003455 pupil.1 0.9968360829812886 91.61866226331979 4.238366820644611
0 1.2529880000001867 pupil.0 0.9983798891293426 91.45421624570533 4.36329006549082
1 1.2617100000006758 pupil.1 0.9952082242670497 91.88334281721863 4.250891972908541
0 1.269788000000517 pupil.0 0.9980025352859387 90.95210278139191 4.339364458007425
1 1.2785100000000966 pupil.1 0.9970218963588793 90.43089150392342 4.184405868754729
0 1.2865880000008474 pupil.0 0.9976920791630285 89.89955682559399 4.289659201165762
1 1.295310000000427 pupil.1 0.9963131135633416 90.16745097852672 4.1723813492205695
0 1.3033880000002682 pupil.0 0.9970878559138721 90.34803072799079 4.311839729686431
1 1.3121100000007573 pupil.1 0.7711907991061131 89.51082774556664 4.149919308122214
0 1.3201880000005985 pupil.0 0.9925709094533799 89.95702659450178 4.298685296931308
1 1.3289100000001781 pupil.1 0.8959472119326322 88.01024412701032 4.083663062230324
0 1.3369880000000194 pupil.0 0.9980360386601922 88.61617936551502 4.234176588262745
1 1.3457100000005084 pupil.1 0.9972028741806196 87.74662690574529 4.072606360307072
0 1.3537880000003497 pupil.0 0.998027435164741 87.48380444988825 4.180623006759084
1 1.3625100000008388 pupil.1 0.9978739996783526 86.79852917636511 4.029514379973563
0 1.37058800000068 pupil.0 0.9971759983326395 87.1974179523874 4.1676932154776125
1 1.3793100000002596 pupil.1 0.9973618588880169 86.02995183593981 3.994495105090108
0 1.3873880000001009 pupil.0 0.9988304601939153 85.69395234317021 4.095371809404172
1 1.39611000000059 pupil.1 0.9973632030536689 85.20936577002048 3.9581316219024862
0 1.4041880000004312 pupil.0 0.9985866040845272 85.37046186334672 4.080352393611185
1 1.4129100000000108 pupil.1 0.9970238649747323 84.89682313243675 3.9427567849427168
0 1.4209880000007615 pupil.0 0.9980261690223363 85.67530886287213 4.094760262148291
1 1.429710000000341 pupil.1 0.9970541798928518 83.80820396383075 3.893059615118198
0 1.4377880000001824 pupil.0 0.9981956441986731 84.39673404811938 4.033687530944981
1 1.4465100000006714 pupil.1 0.9983937734190246 82.36888743149787 3.825997747760607
0 1.4545880000005127 pupil.0 0.9982758429898455 83.92150127145369 4.011126674553039
1 1.4633100000000923 pupil.1 0.9976399741433157 81.91688669199108 3.8042289089665764
0 1.471388000000843 pupil.0 0.9994287057693636 82.77776449068952 3.954823602821852
1 1.4801100000004226 pupil.1 0.9977945502509554 81.19534818868749 3.7698953420744954
0 1.4881880000002639 pupil.0 0.9992074442704122 82.45573776664163 3.9395649130077905
1 1.496910000000753 pupil.1 0.9983957108214979 80.55842683907976 3.7391656005293163
0 1.5049880000005942 pupil.0 0.9916041248020493 82.26128414745494 3.9295084397150446
1 1.5137100000001737 pupil.1 0.9975652351161473 80.42538285926364 3.7322110666674257
0 1.521788000000015 pupil.0 0.9986105812680138 81.46106407437053 3.891183544596703
1 1.530510000000504 pupil.1 0.9977314038661166 80.05519564619641 3.7149982389727905
0 1.5385880000003453 pupil.0 0.9982073476522364 80.40853193821033 3.840311772835203
1 1.5473100000008344 pupil.1 0.9978225151830048 78.90928088439153 3.660683209240789
0 1.5553880000006757 pupil.0 0.9986314283687703 79.59511355783584 3.8022808683511564
1 1.5641100000002552 pupil.1 0.9979143560638584 78.37864044926282 3.636853016722321
0 1.5721880000000965 pupil.0 0.1835580502812438 88.6735029521626 4.207209186142572
1 1.5809100000005856 pupil.1 0.15161046598485006 90.17820682611156 4.0783324745125356
0 1.5889880000004268 pupil.0 0.19369643414497822 87.73466021339557 4.21302963488295
1 1.5977100000000064 pupil.1 0.053905751193719036 90.141542788304 4.0859270130773
0 1.6057880000007572 pupil.0 0.0 0.0 0.0
1 1.6145100000003367 pupil.1 0.05392676176747795 87.7456992803929 4.09573903948692
0 1.622588000000178 pupil.0 0.0 0.0 0.0
1 1.631310000000667 pupil.1 0.02612794820213073 86.58244685057252 4.09967828157803
0 1.6393880000005083 pupil.0 0.0 0.0 0.0
1 1.648110000000088 pupil.1 0.04409415839430428 85.74051857837013 4.063775636506093
0 1.6561880000008387 pupil.0 0.0 0.0 0.0
1 1.6649100000004182 pupil.1 0.03938430595899808 86.56383811128 4.105697303275624
0 1.6729880000002595 pupil.0 0.0 0.0 0.0
1 1.6817100000007486 pupil.1 0.13610354383724663 88.9424486261402 4.107612981811618
0 1.6897880000005898 pupil.0 0.12554020126475715 86.16515076226392 4.171092885951274
1 1.6985100000001694 pupil.1 0.05402947366891671 88.64185344763932 4.103778041216281
0 1.7065880000000107 pupil.0 0.16008861323428752 86.75261157691254 4.21682452989496
1 1.7153100000004997 pupil.1 0.030670950910965823 86.32286742667611 4.065385778097714
0 1.723388000000341 pupil.0 0.09300882821891714 88.37328758259976 4.222903353797067
1 1.73211000000083 pupil.1 0.0248759499058358 88.71044133323198 4.099959195214037
0 1.7401880000006713 pupil.0 0.20528342250176138 89.37644592105985 4.217998211408106
1 1.7489100000002509 pupil.1 0.012107124108036523 89.44409276439185 4.091482365206009
0 1.7569880000000921 pupil.0 0.14495819059487913 87.40825857791458 4.196701882295239
1 1.7657100000005812 pupil.1 0.057166996914541905 89.10837699728815 4.092568410730266
0 1.7737880000004225 pupil.0 0.25185204802346844 87.84473458019758 4.209374056486079
1 1.782510000000002 pupil.1 0.027587275640287384 90.09248072494533 4.083864498236143
0 1.7905880000007528 pupil.0 0.908357139746631 77.61981093205674 3.715208489546368
1 1.7993100000003324 pupil.1 0.05560419248250223 90.06171022996162 4.097475792818967
0 1.8073880000001736 pupil.0 0.9984809426106142 77.88658068096203 3.7273808417769803
1 1.8161100000006627 pupil.1 0.06507374908469354 88.82675758628501 4.062665842441921
0 1.824188000000504 pupil.0 0.9769125748164078 77.99267008618094 3.7306244020084396
1 1.8329100000000835 pupil.1 0.9962724213779954 76.31843010581348 3.5507106862267164
0 1.8409880000008343 pupil.0 0.9994581658990308 77.69520964659898 3.7158644198467994
1 1.8497100000004139 pupil.1 0.9983663699794051 77.00460926904427 3.581655682289767
0 1.8577880000002551 pupil.0 0.9856063313153658 79.21940512585154 3.788622836731054
1 1.8665100000007442 pupil.1 0.9978440447941334 77.39622242866159 3.598742814793637
0 1.8745880000005855 pupil.0 0.9883295740705451 78.5887162364778 3.7568335945557685
1 1.883310000000165 pupil.1 0.9973274690643967 77.51815047185916 3.6033193288886243
0 1.8913880000000063 pupil.0 0.9988644616026902 78.63712855472815 3.757996748234878
1 1.9001100000004953 pupil.1 0.9984651168361921 77.19368896430825 3.5878071553349593
0 1.9081880000003366 pupil.0 0.9751644420919936 78.32939464081852 3.7419863362273595
1 1.9169100000008257 pupil.1 0.9980531043949452 77.88704181685758 3.6183855686666275
0 1.924988000000667 pupil.0 0.99907493192389 78.78516368852212 3.763638377834756
1 1.9337100000002465 pupil.1 0.9977176713095652 78.08667920831951 3.6286146938939816
0 1.9417880000000878 pupil.0 0.9993089390302347 78.79854804474918 3.763188714672991
1 1.9505100000005768 pupil.1 0.9972880406927124 78.95457008548897 3.6666995534920006
0 1.958588000000418 pupil.0 0.9986989705642383 79.27159435756157 3.7862385599927046
1 1.9673099999999977 pupil.1 0.9981216752875955 79.1309948387275 3.674664254900461
0 1.9753880000007484 pupil.0 0.9984965710635451 79.55875843877486 3.7991514376328164
1 1.984110000000328 pupil.1 0.9977103854574122 79.52760391766348 3.693278117178114
0 1.9921880000001693 pupil.0 0.9556852214733198 79.74579661558107 3.807822122173477
1 2.0009100000006583 pupil.1 0.9540351095297968 79.96258997023811 3.7130358345986587
0 2.0089880000004996 pupil.0 0.9346065629350414 80.1679430796703 3.8291655123675743
1 2.017710000000079 pupil.1 0.9970289274855231 80.34410795856648 3.730715223241519
0 2.02578800000083 pupil.0 0.9433943483786156 81.44217668673642 3.8901243080264925
1 2.0345100000004095 pupil.1 0.998098808975637 80.29561857085308 3.728906005393989
0 2.0425880000002508 pupil.0 0.9981875763576745 81.31992296619069 3.88455068149801
1 2.05131000000074 pupil.1 0.9980147635890498 80.77321559513744 3.751249465138439
0 2.059388000000581 pupil.0 0.9983959647299526 81.36210895714122 3.886860992593002
1 2.0681100000001607 pupil.1 0.9675000191897847 80.90166809919297 3.757703081797817
0 2.076188000000002 pupil.0 0.9989367657982948 81.73337194387895 3.904515959476664
1 2.084910000000491 pupil.1 0.9983326045928791 81.07042511391452 3.7661219813883573
0 2.0929880000003322 pupil.0 0.9977885691809847 82.30802266272889 3.932756174399252
1 2.1017100000008213 pupil.1 0.997657400163947 81.87728962644634 3.8028676958427554
0 2.1097880000006626 pupil.0 0.9990055977588763 81.6577431531983 3.900955286927818
1 2.118510000000242 pupil.1 0.9982337534645479 81.93315803655106 3.805401097146152
0 2.1265880000000834 pupil.0 0.9983106087599417 82.48334757054 3.9400469223023316
1 2.1353100000005725 pupil.1 0.9970586130772606 82.46878561007415 3.829900088074682
0 2.1433880000004137 pupil.0 0.9982784383619971 82.61073640312615 3.946563070451473
1 2.1521099999999933 pupil.1 0.9955604087090851 81.58395899489538 3.7885360767054985
0 2.160188000000744 pupil.0 0.9981473256684108 83.52897475410909 3.990423677905168
1 2.1689100000003236 pupil.1 0.9977288594603075 82.32572539926421 3.8224789454460724
0 2.176988000000165 pupil.0 0.999141898534168 83.39186995319314 3.983219311557203
1 2.185710000000654 pupil.1 0.9983884810575563 81.68488684074102 3.7921597115398447
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment