Mercurial > cortex
view thesis/org/roadmap.org @ 570:9647f0168287
update for interview.
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Tue, 15 Jul 2014 02:46:00 -0400 |
parents | 807fb1046a98 |
children |
line wrap: on
line source
1 In order for this to be a reasonable thesis that I can be proud of,2 what are the /minimum/ number of things I need to get done?5 * worm OR hand registration6 - training from a few examples (2 to start out)7 - aligning the body with the scene8 - generating sensory data9 - matching previous labeled examples using dot-products or some10 other basic thing11 - showing that it works with different views13 * first draft14 - draft of thesis without bibliography or formatting15 - should have basic experiment and have full description of16 framework with code17 - review with Winston19 * final draft20 - implement stretch goals from Winston if possible21 - complete final formatting and submit23 <<<<<<< local24 * DONE CORTEX25 CLOSED: [2014-05-29 Thu 17:01] DEADLINE: <2014-05-09 Fri>26 SHIT THAT'S IN 67 DAYS!!!28 ** program simple feature matching code for the worm's segments30 Subgoals:31 *** DONE Get cortex working again, run tests, no jmonkeyengine updates32 CLOSED: [2014-03-03 Mon 22:07] SCHEDULED: <2014-03-03 Mon>33 *** DONE get blender working again34 CLOSED: [2014-03-03 Mon 22:43] SCHEDULED: <2014-03-03 Mon>35 *** DONE make sparce touch worm segment in blender36 CLOSED: [2014-03-03 Mon 23:16] SCHEDULED: <2014-03-03 Mon>37 CLOCK: [2014-03-03 Mon 22:44]--[2014-03-03 Mon 23:16] => 0:3238 *** DONE make multi-segment touch worm with touch sensors and display39 CLOSED: [2014-03-03 Mon 23:54] SCHEDULED: <2014-03-03 Mon>41 *** DONE Make a worm wiggle and curl42 CLOSED: [2014-03-04 Tue 23:03] SCHEDULED: <2014-03-04 Tue>45 ** First draft47 Subgoals:48 *** Writeup new worm experiments.49 *** Triage implementation code and get it into chapter form.55 ** for today57 - guided worm :: control the worm with the keyboard. Useful for58 testing the body-centered recog scripts, and for59 preparing a cool demo video.61 - body-centered recognition :: detect actions using hard coded62 body-centered scripts.64 - cool demo video of the worm being moved and recognizing things ::65 will be a neat part of the thesis.67 - thesis export :: refactoring and organization of code so that it68 spits out a thesis in addition to the web page.70 - video alignment :: analyze the frames of a video in order to align71 the worm. Requires body-centered recognition. Can "cheat".73 - smoother actions :: use debugging controls to directly influence the74 demo actions, and to generate recoginition procedures.76 - degenerate video demonstration :: show the system recognizing a77 curled worm from dead on. Crowning achievement of thesis.79 ** Ordered from easiest to hardest81 Just report the positions of everything. I don't think that this82 necessairly shows anything usefull.84 Worm-segment vision -- you initialize a view of the worm, but instead85 of pixels you use labels via ray tracing. Has the advantage of still86 allowing for visual occlusion, but reliably identifies the objects,87 even without rainbow coloring. You can code this as an image.89 Same as above, except just with worm/non-worm labels.91 Color code each worm segment and then recognize them using blob92 detectors. Then you solve for the perspective and the action93 simultaneously.95 The entire worm can be colored the same, high contrast color against a96 nearly black background.98 "Rooted" vision. You give the exact coordinates of ONE piece of the99 worm, but the algorithm figures out the rest.101 More rooted vision -- start off the entire worm with one posistion.103 The right way to do alignment is to use motion over multiple frames to104 snap individual pieces of the model into place sharing and105 propragating the individual alignments over the whole model. We also106 want to limit the alignment search to just those actions we are107 prepared to identify. This might mean that I need some small "micro108 actions" such as the individual movements of the worm pieces.110 Get just the centers of each segment projected onto the imaging111 plane. (best so far).114 Repertoire of actions + video frames -->115 directed multi-frame-search alg122 !! Could also have a bounding box around the worm provided by123 filtering the worm/non-worm render, and use bbbgs. As a bonus, I get124 to include bbbgs in my thesis! Could finally do that recursive things125 where I make bounding boxes be those things that give results that126 give good bounding boxes. If I did this I could use a disruptive127 pattern on the worm.129 Re imagining using default textures is very simple for this system,130 but hard for others.133 Want to demonstrate, at minimum, alignment of some model of the worm134 to the video, and a lookup of the action by simulated perception.136 note: the purple/white points is a very beautiful texture, because137 when it moves slightly, the white dots look like they're138 twinkling. Would look even better if it was a darker purple. Also139 would look better more spread out.142 embed assumption of one frame of view, search by moving around in143 simulated world.145 Allowed to limit search by setting limits to a hemisphere around the146 imagined worm! This limits scale also.152 !! Limited search with worm/non-worm rendering.153 How much inverse kinematics do we have to do?154 What about cached (allowed state-space) paths, derived from labeled155 training. You have to lead from one to another.157 What about initial state? Could start the input videos at a specific158 state, then just match that explicitly.160 !! The training doesn't have to be labeled -- you can just move around161 for a while!!163 !! Limited search with motion based alignment.168 "play arounds" can establish a chain of linked sensoriums. Future169 matches must fall into one of the already experienced things, and once170 they do, it greatly limits the things that are possible in the future.173 frame differences help to detect muscle exertion.175 Can try to match on a few "representative" frames. Can also just have176 a few "bodies" in various states which we try to match.180 Paths through state-space have the exact same signature as181 simulation. BUT, these can be searched in parallel and don't interfere182 with each other.187 ** Final stretch up to First Draft189 *** DONE complete debug control of worm190 CLOSED: [2014-03-17 Mon 17:29] SCHEDULED: <2014-03-17 Mon>191 CLOCK: [2014-03-17 Mon 14:01]--[2014-03-17 Mon 17:29] => 3:28192 *** DONE add phi-space output to debug control193 CLOSED: [2014-03-17 Mon 17:42] SCHEDULED: <2014-03-17 Mon>194 CLOCK: [2014-03-17 Mon 17:31]--[2014-03-17 Mon 17:42] => 0:11196 *** DONE complete automatic touch partitioning197 CLOSED: [2014-03-18 Tue 21:43] SCHEDULED: <2014-03-18 Tue>198 *** DONE complete cyclic predicate199 CLOSED: [2014-03-19 Wed 16:34] SCHEDULED: <2014-03-18 Tue>200 CLOCK: [2014-03-19 Wed 13:16]--[2014-03-19 Wed 16:34] => 3:18201 *** DONE complete three phi-stream action predicatates; test them with debug control202 CLOSED: [2014-03-19 Wed 16:35] SCHEDULED: <2014-03-17 Mon>203 CLOCK: [2014-03-18 Tue 18:36]--[2014-03-18 Tue 21:43] => 3:07204 CLOCK: [2014-03-18 Tue 18:34]--[2014-03-18 Tue 18:36] => 0:02205 CLOCK: [2014-03-17 Mon 19:19]--[2014-03-17 Mon 21:19] => 2:00206 *** DONE build an automatic "do all the things" sequence.207 CLOSED: [2014-03-19 Wed 16:55] SCHEDULED: <2014-03-19 Wed>208 CLOCK: [2014-03-19 Wed 16:53]--[2014-03-19 Wed 16:55] => 0:02209 *** DONE implement proprioception based movement lookup in phi-space210 CLOSED: [2014-03-19 Wed 22:04] SCHEDULED: <2014-03-19 Wed>211 CLOCK: [2014-03-19 Wed 19:32]--[2014-03-19 Wed 22:04] => 2:32212 *** DONE make proprioception reference phi-space indexes213 CLOSED: [2014-03-19 Wed 22:47] SCHEDULED: <2014-03-19 Wed>216 *** DONE create test videos, also record positions of worm segments217 CLOSED: [2014-03-20 Thu 22:02] SCHEDULED: <2014-03-19 Wed>219 *** TODO Collect intro, worm-learn and cortex creation into draft thesis.