OCCRA
Go to Post I'm basically only posting this so that future Shaker Robotics kids will see it and tell themselves "never again"... - Chris is me [more]
Home
Go Back   Chief Delphi > ChiefDelphi.com Website > Extra Discussion
CD-Events   CD-Media   CD-Spy   FRC-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 05-24-2012, 11:07 AM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
paper: 987 Kinect Implementation

Thread created automatically to discuss a document in CD-Media.

987 Kinect Implementation by Hjelstrom
Reply With Quote
  #2   Spotlight this post!  
Unread 05-24-2012, 11:10 AM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
Re: paper: 987 Kinect Implementation

Here is a paper describing how we used the Kinect in our FRC robot. Feel free to ask questions!
Reply With Quote
  #3   Spotlight this post!  
Unread 05-24-2012, 11:45 AM
Tom Bottiglieri Tom Bottiglieri is offline
Custom User Title
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,013
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Send a message via AIM to Tom Bottiglieri
Re: paper: 987 Kinect Implementation

Thanks for sharing this. It's great you were able to get this all working with fairly little Linux experience.
Reply With Quote
  #4   Spotlight this post!  
Unread 05-24-2012, 12:25 PM
stundt1's Avatar
stundt1 stundt1 is offline
Steve
AKA: Steve
FRC #0578 (Red Raider Robotics)
Team Role: Scout
 
Join Date: Dec 2010
Rookie Year: 2009
Location: fairport,NY
Posts: 360
stundt1 will become famous soon enoughstundt1 will become famous soon enough
Re: paper: 987 Kinect Implementation

Awesome will read a little later. Here is some questions I have.

By when in build season did you decide that you were going to use the kinect to aid in vision tracking?

By when did you have the vision code working fully functional by?

-Steve
__________________
Steve
-2012 Coach-Buckeye
-Head Scout
Add Team 578 on
Reply With Quote
  #5   Spotlight this post!  
Unread 05-24-2012, 12:52 PM
Jared Russell's Avatar
Jared Russell Jared Russell is offline
I feel better now.
AKA: Jared341
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Nov 2002
Rookie Year: 2001
Location: San Francisco, CA
Posts: 2,627
Jared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond repute
Re: paper: 987 Kinect Implementation

Thanks for sharing! I know that we thought about doing something similar this year, but were scared off by the added complexity of having to power and interface with a second computing device. If it's a viable and strategically valuable option next year, we will definitely put some of the lessons learned in this whitepaper to good use!
Reply With Quote
  #6   Spotlight this post!  
Unread 05-24-2012, 02:09 PM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
Re: paper: 987 Kinect Implementation

Quote:
Originally Posted by stundt1 View Post
Awesome will read a little later. Here is some questions I have.

By when in build season did you decide that you were going to use the kinect to aid in vision tracking?

By when did you have the vision code working fully functional by?

-Steve
We decided a couple of days in and it took until the LA regional (week 3 I believe) to have the code fully functional. One reason we tried this is that we've done vision systems many times in the past so we wanted to try something different.

It turned out to be a fantastic sensor and worked better than we could have hoped. It really feels like a generational leap in the amount and quality of information available to the robot and we only barely scratched the surface.
Reply With Quote
  #7   Spotlight this post!  
Unread 05-24-2012, 03:00 PM
JesseK's Avatar
JesseK JesseK is offline
Flybotix Fanatic
FRC #1885 (iLITE)
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2005
Location: Reston, VA
Posts: 2,803
JesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond repute
Re: paper: 987 Kinect Implementation

Did you have any issues with the O/S not booting in a reasonable amount of time?
Reply With Quote
  #8   Spotlight this post!  
Unread 05-24-2012, 03:10 PM
stundt1's Avatar
stundt1 stundt1 is offline
Steve
AKA: Steve
FRC #0578 (Red Raider Robotics)
Team Role: Scout
 
Join Date: Dec 2010
Rookie Year: 2009
Location: fairport,NY
Posts: 360
stundt1 will become famous soon enoughstundt1 will become famous soon enough
Re: paper: 987 Kinect Implementation

We didn't have enough time to get our vision shooting working fully. If only we had a few more days with the robot

Great job 987 was a fan of your robot and its accurate shooter.
__________________
Steve
-2012 Coach-Buckeye
-Head Scout
Add Team 578 on
Reply With Quote
  #9   Spotlight this post!  
Unread 05-24-2012, 03:58 PM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
Re: paper: 987 Kinect Implementation

Quote:
Originally Posted by Jared341 View Post
Thanks for sharing! I know that we thought about doing something similar this year, but were scared off by the added complexity of having to power and interface with a second computing device. If it's a viable and strategically valuable option next year, we will definitely put some of the lessons learned in this whitepaper to good use!
Yeah, that is the hard part about this. If you read the "algorithms" we used, you can see that part turned out to be way easier than vision! We did have one match in Las Vegas where we sat dead for 30s while our cRio tried to connect to the Pandaboard so the extra complexity is definitely a risk. In an ideal world, NI would come out with a USB module and a port of OpenKinect!

Your team's vision system really inspired us to take another look at vision too though. Using the dashboard to do the processing helps in so many ways. The biggest I think is that you can "see" what the algorithm is doing at all times. When we wanted to see what our Kinect code is doing, we had to drag a monitor, keyboard, mouse, power inverter all onto the field. It was kind of a nightmare.

If anyone can point us in the direction of a way to stream video (stream the frames that the kinect code renders) from the Pandaboard/Ubuntu to the SmartDashboard, that would be a huge improvement for this kind of control system. That would be a good offseason project.
Reply With Quote
  #10   Spotlight this post!  
Unread 05-24-2012, 04:11 PM
JesseK's Avatar
JesseK JesseK is offline
Flybotix Fanatic
FRC #1885 (iLITE)
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2005
Location: Reston, VA
Posts: 2,803
JesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond repute
Re: paper: 987 Kinect Implementation

Quote:
Originally Posted by Hjelstrom View Post
If anyone can point us in the direction of a way to stream video (stream the frames that the kinect code renders) from the Pandaboard/Ubuntu to the SmartDashboard, that would be a huge improvement for this kind of control system. That would be a good offseason project.
If the stream is a true stream, then this may be of help ... if you can't write code/scripting to make a stream of your own, then see below. ffmpeg (on linux) may help create a stream; it's pretty versatile, but I've only used it to convert youtube videos into local files.
www.videolan.org

Otherwise, you may wind up wrapping the images and then coming up with a simple Java display that displays the latest image from the socket. We did this in 2009 & 2012. It's another layer of complexity, so I'd recommend trying to get a video stream going first.
Reply With Quote
  #11   Spotlight this post!  
Unread 05-24-2012, 05:24 PM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
Re: paper: 987 Kinect Implementation

Quote:
Originally Posted by JesseK View Post
Did you have any issues with the O/S not booting in a reasonable amount of time?
The Pandaboard and our program was always up and running before the cRio. The only case it wasn't was when (we believe) it was doing the equivalent of a "checkdisk" due to the way power sometimes gets cut while its running (someone just turns the robot off without shutting the Pandaboard down first). We put a surprising amount of work into just coming up with a way to safely and quickly shut the pandaboard down.
Reply With Quote
  #12   Spotlight this post!  
Unread 05-24-2012, 05:34 PM
connor.worley's Avatar
connor.worley connor.worley is offline
"Mentor"
FRC #0254 (The Cheesy Poofs)
 
Join Date: Mar 2011
Rookie Year: 2010
Location: Berkeley
Posts: 452
connor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond repute
Re: paper: 987 Kinect Implementation

Have you thought of using a ramdisk to solve the shutdown problem? This article looks like it could be useful.
__________________
Team 254 (2014-???)

Team 1538 (2011-2014)
2014 Driver (25W 17L 1T)
2012-2014 Manager of Software and Electrical
Reply With Quote
  #13   Spotlight this post!  
Unread 05-24-2012, 06:14 PM
Hjelstrom's Avatar
Hjelstrom Hjelstrom is offline
Mentor
FRC #0987 (High Rollers)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2005
Location: Las Vegas
Posts: 114
Hjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud ofHjelstrom has much to be proud of
Re: paper: 987 Kinect Implementation

Quote:
Originally Posted by JesseK View Post
If the stream is a true stream, then this may be of help ... if you can't write code/scripting to make a stream of your own, then see below. ffmpeg (on linux) may help create a stream; it's pretty versatile, but I've only used it to convert youtube videos into local files.
www.videolan.org

Otherwise, you may wind up wrapping the images and then coming up with a simple Java display that displays the latest image from the socket. We did this in 2009 & 2012. It's another layer of complexity, so I'd recommend trying to get a video stream going first.
Thanks for the pointers! Ideally we'd like to be able to take the frames that we would normally render to the viewport and send them to the dashboard. A c or c++ api that lets you just feed frames into it would be ideal. I am afraid of the cpu overhead of this but it could be a good debugging tool that you just turn off in matches. Or maybe the second cpu on the pandaboard could handle it.
Reply With Quote
  #14   Spotlight this post!  
Unread 05-24-2012, 06:35 PM
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 7,842
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: paper: 987 Kinect Implementation

You could show the kinect display through SSH X11 forwarding. You'd have to play with port numbers to get something that will work on the field, however.
Reply With Quote
  #15   Spotlight this post!  
Unread 05-24-2012, 08:26 PM
slijin's Avatar
slijin slijin is offline
Pockets
AKA: Samuel Lijin
FRC #0694 (StuyPulse)
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2010
Location: New York City
Posts: 537
slijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to beholdslijin is a splendid one to behold
Re: paper: 987 Kinect Implementation

One of the things that I recall very vividly during Curie finals was that your turret was constantly in motion, and would turn to remain aimed at the region around the center backboard (although if you drove around long enough, it would eventually drift away).

Were you constantly auto-aiming your turret in the main control loop with the Pandaboard-processed data, or was that something else entirely? I ask because in your paper you say
Quote:
during tele-op the driver has a button he can hold to auto-aim
__________________

2010-12 CT Chairman's
2011 Galileo 5th seed
2010 NY Regional Winners
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 02:06 AM.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi