|
@@ -2,7 +2,7 @@
|
|
|
"cells": [
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 73,
|
|
|
+ "execution_count": 48,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -44,7 +44,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 74,
|
|
|
+ "execution_count": 49,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -53,7 +53,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 75,
|
|
|
+ "execution_count": 50,
|
|
|
"metadata": {
|
|
|
"scrolled": false
|
|
|
},
|
|
@@ -69,7 +69,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 76,
|
|
|
+ "execution_count": 51,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -91,7 +91,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 77,
|
|
|
+ "execution_count": 52,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -108,7 +108,8 @@
|
|
|
"cfg['position']['file_path'] = os.path.join(save_to, 'positions.csv')\n",
|
|
|
"cfg['experiment']['file_path'] = os.path.join(save_to, 'events.csv')\n",
|
|
|
"cfg['sound']['file_path'] = os.path.join(save_to, 'sounds.csv')\n",
|
|
|
- "cfg['position']['background_file'] = os.path.join('assets', cfg['position']['background_file'])\n",
|
|
|
+ "cfg['position']['background_light'] = os.path.join('assets', cfg['position']['background_light'])\n",
|
|
|
+ "cfg['position']['background_dark'] = os.path.join('assets', cfg['position']['background_dark'])\n",
|
|
|
" \n",
|
|
|
"# Saves all parameters to a JSON file with the user-defined \"Experiment ID\" as filename\n",
|
|
|
"with open(os.path.join(save_to, experiment_id + '.json'), 'w') as f:\n",
|
|
@@ -121,7 +122,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 78,
|
|
|
+ "execution_count": 53,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -136,7 +137,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 79,
|
|
|
+ "execution_count": 54,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -154,7 +155,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 80,
|
|
|
+ "execution_count": 55,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -164,7 +165,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 81,
|
|
|
+ "execution_count": 56,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -175,11 +176,12 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 1,
|
|
|
+ "execution_count": 57,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
|
"def switch_light(pt, board):\n",
|
|
|
+ " print('Switching BG..')\n",
|
|
|
" pt.switch_background()\n",
|
|
|
" board.switch_light()"
|
|
|
]
|
|
@@ -201,7 +203,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 82,
|
|
|
+ "execution_count": null,
|
|
|
"metadata": {
|
|
|
"scrolled": false
|
|
|
},
|
|
@@ -210,11 +212,7 @@
|
|
|
"name": "stdout",
|
|
|
"output_type": "stream",
|
|
|
"text": [
|
|
|
- "Webcam stream 1024.0:768.0 at 20.00 FPS started\n",
|
|
|
- "Fake Arduino - exiting...\n",
|
|
|
- "Position tracker stopped\n",
|
|
|
- "Video writer stopped\n",
|
|
|
- "Camera released\n"
|
|
|
+ "Webcam stream 1024.0:768.0 at 20.00 FPS started\n"
|
|
|
]
|
|
|
}
|
|
|
],
|
|
@@ -332,6 +330,9 @@
|
|
|
" if target_since is not None:\n",
|
|
|
" cv2.putText(frame, 'In target: %.2f' % float(c_time - target_since), (10, 670), cv2.FONT_HERSHEY_DUPLEX, .5, COLORS['white'])\n",
|
|
|
" \n",
|
|
|
+ " # Light or dark period\n",
|
|
|
+ " cv2.putText(frame, 'Light' if pt.is_light else 'Dark', (10, 690), cv2.FONT_HERSHEY_DUPLEX, .5, (255, 255, 255)) \n",
|
|
|
+ " \n",
|
|
|
" # assign the frame back to the video stream for other controllers\n",
|
|
|
" vs.frame_with_infos = frame\n",
|
|
|
" \n",
|
|
@@ -431,7 +432,7 @@
|
|
|
" \n",
|
|
|
" # init light events\n",
|
|
|
" timers = []\n",
|
|
|
- " for event_t = cfg_exp['light_events']:\n",
|
|
|
+ " for event_t in cfg_exp['light_events']:\n",
|
|
|
" timers.append(threading.Timer(event_t, switch_light, args=(pt, board))) \n",
|
|
|
" for t in timers:\n",
|
|
|
" t.start()\n",
|
|
@@ -467,7 +468,7 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 83,
|
|
|
+ "execution_count": null,
|
|
|
"metadata": {},
|
|
|
"outputs": [],
|
|
|
"source": [
|
|
@@ -477,34 +478,9 @@
|
|
|
},
|
|
|
{
|
|
|
"cell_type": "code",
|
|
|
- "execution_count": 84,
|
|
|
+ "execution_count": null,
|
|
|
"metadata": {},
|
|
|
- "outputs": [
|
|
|
- {
|
|
|
- "name": "stderr",
|
|
|
- "output_type": "stream",
|
|
|
- "text": [
|
|
|
- "postprocessing.ipynb:35: UserWarning: loadtxt: Empty input file: \"sessions\\47_aSIT_2021-08-11_16-03-25\\positions.csv\"\n",
|
|
|
- " \" \\n\",\n",
|
|
|
- "postprocessing.ipynb:35: UserWarning: loadtxt: Empty input file: \"sessions\\47_aSIT_2021-08-11_16-03-25\\events.csv\"\n",
|
|
|
- " \" \\n\",\n",
|
|
|
- "postprocessing.ipynb:35: UserWarning: loadtxt: Empty input file: \"sessions\\47_aSIT_2021-08-11_16-03-25\\sounds.csv\"\n",
|
|
|
- " \" \\n\",\n"
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "ename": "IndexError",
|
|
|
- "evalue": "too many indices for array: array is 1-dimensional, but 2 were indexed",
|
|
|
- "output_type": "error",
|
|
|
- "traceback": [
|
|
|
- "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
|
|
- "\u001b[1;31mIndexError\u001b[0m Traceback (most recent call last)",
|
|
|
- "\u001b[1;32m<ipython-input-84-74648d1531a4>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;31m# do pack data to HDF5\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mh5name\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mpack\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0msession_path\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
|
|
|
- "\u001b[1;32mD:\\runSIT\\postprocessing.ipynb\u001b[0m in \u001b[0;36mpack\u001b[1;34m(session_path)\u001b[0m\n\u001b[0;32m 52\u001b[0m \u001b[1;34m\" h5name = os.path.join(session_path, '%s.h5' % params_file.split('.')[0])\\n\"\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 53\u001b[0m \u001b[1;34m\" with h5py.File(h5name, 'w') as f: # overwrite mode\\n\"\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 54\u001b[1;33m \u001b[1;34m\"\\n\"\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 55\u001b[0m \u001b[1;34m\"\\n\"\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 56\u001b[0m \u001b[1;34m\" # -------- save raw data ------------\\n\"\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
|
|
|
- "\u001b[1;31mIndexError\u001b[0m: too many indices for array: array is 1-dimensional, but 2 were indexed"
|
|
|
- ]
|
|
|
- }
|
|
|
- ],
|
|
|
+ "outputs": [],
|
|
|
"source": [
|
|
|
"# do pack data to HDF5\n",
|
|
|
"h5name = pack(session_path)"
|