Go to Post Different strokes for different folks. - Madison [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 17-02-2013, 01:09
jacob9706 jacob9706 is offline
Registered User
AKA: Jacob Ebey
FRC #3574 (High Tekerz)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Seattle
Posts: 101
jacob9706 is on a distinguished road
Python Vision Tracking

Here is a sample of what my team has done this season in terms of vision processing. All the code is available at https://github.com/Team3574/2013VisionCode

Any questions you have I will try to answer.
Attached Thumbnails
Click image for larger version

Name:	Screenshot from 2013-02-16 22:00:45.png
Views:	209
Size:	1.50 MB
ID:	14058  
__________________
/*
* Team 3574 Alumni
*
* 2011 - Highest Seeded Rookie
* 2011 - Rookie All-Star
* 2012 - Engineering Inspiration
* 2012 - Olympic Deans List Winner
* 2013 - Engineering Inspiration
* 2013 - Judges Award (For unique circular robot and the way the team works together.)
*/
  #2   Spotlight this post!  
Unread 17-02-2013, 01:21
Moriarty's Avatar
Moriarty Moriarty is offline
Registered User
AKA: Brendan Moriarty
FRC #4302 (Robophins)
Team Role: Leadership
 
Join Date: Feb 2012
Rookie Year: 2009
Location: Chicago
Posts: 81
Moriarty is a splendid one to beholdMoriarty is a splendid one to beholdMoriarty is a splendid one to beholdMoriarty is a splendid one to beholdMoriarty is a splendid one to beholdMoriarty is a splendid one to beholdMoriarty is a splendid one to behold
Re: Python Vision Tracking

Very nice! I love pythons readability and it seems like a great idea to implement vision targeting in python. I assume you didn't program your whole robot in Python (or did you?).

Also: method Point.getTurple() -- Shouldn't it be getTuple?
  #3   Spotlight this post!  
Unread 17-02-2013, 01:23
jacob9706 jacob9706 is offline
Registered User
AKA: Jacob Ebey
FRC #3574 (High Tekerz)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Seattle
Posts: 101
jacob9706 is on a distinguished road
Re: Python Vision Tracking

Quote:
Originally Posted by Moriarty View Post
Very nice! I love pythons readability and it seems like a great idea to implement vision targeting in python. I assume you didn't program your whole robot in Python (or did you?).

Also: method Point.getTurple() -- Shouldn't it be getTuple?
Yeah they did the robot in Java. I am working on Network Tables right now. Any ideas for that so I don't have to write my own? And yes, Ignore my spelling
__________________
/*
* Team 3574 Alumni
*
* 2011 - Highest Seeded Rookie
* 2011 - Rookie All-Star
* 2012 - Engineering Inspiration
* 2012 - Olympic Deans List Winner
* 2013 - Engineering Inspiration
* 2013 - Judges Award (For unique circular robot and the way the team works together.)
*/
  #4   Spotlight this post!  
Unread 17-02-2013, 01:32
PaulDavis1968's Avatar
PaulDavis1968 PaulDavis1968 is offline
Embedded Software/Systems Engineer
AKA: Master of Complexity
FRC #2053 (TigerTronics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Endicot NY
Posts: 91
PaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nice
Re: Python Vision Tracking

Quote:
Originally Posted by jacob9706 View Post
Yeah they did the robot in Java. I am working on Network Tables right now. Any ideas for that so I don't have to write my own? And yes, Ignore my spelling
Use the c++ versions of networktables on non robot side. Use SIP with python. Now you have network tables in Python. Look in the Python forum on here. It tells you how.

http://www.chiefdelphi.com/forums/sh...d.php?t=111530

It is the same concept of using python wrapper around opencv as you did.

Last edited by PaulDavis1968 : 17-02-2013 at 01:43.
  #5   Spotlight this post!  
Unread 17-02-2013, 17:15
ohrly?'s Avatar
ohrly? ohrly? is offline
Griffin Alum
AKA: Colin Poler
FRC #1884 (The Griffins)
Team Role: Alumni
 
Join Date: Jan 2013
Rookie Year: 2011
Location: London
Posts: 58
ohrly? is an unknown quantity at this point
Re: Python Vision Tracking

My team is doing something similar, and we ended up using a library called "py4j" to use the java network tables client provided by FIRST.

What are you using as a computer? And also, what is the frisbee tracking for?
  #6   Spotlight this post!  
Unread 19-02-2013, 14:34
sparkytwd's Avatar
sparkytwd sparkytwd is offline
Registered User
FRC #3574
Team Role: Mentor
 
Join Date: Feb 2012
Rookie Year: 2012
Location: Seattle
Posts: 96
sparkytwd will become famous soon enough
Re: Python Vision Tracking

I'm another mentor for 3574, I posted our Python NT2 client here: http://www.chiefdelphi.com/forums/sh...d.php?t=113955

Unfortunately we can't use the SIP wrapped libraries as this is running on an ARM platform (Odroid U2).
  #7   Spotlight this post!  
Unread 23-02-2013, 19:05
PaulDavis1968's Avatar
PaulDavis1968 PaulDavis1968 is offline
Embedded Software/Systems Engineer
AKA: Master of Complexity
FRC #2053 (TigerTronics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Endicot NY
Posts: 91
PaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nice
Re: Python Vision Tracking

Quote:
Originally Posted by sparkytwd View Post
I'm another mentor for 3574, I posted our Python NT2 client here: http://www.chiefdelphi.com/forums/sh...d.php?t=113955

Unfortunately we can't use the SIP wrapped libraries as this is running on an ARM platform (Odroid U2).

I got SIP to build.
  #8   Spotlight this post!  
Unread 24-02-2013, 07:11
yehudaeitam yehudaeitam is offline
Registered User
FRC #3211
 
Join Date: Mar 2012
Location: Yeruham
Posts: 2
yehudaeitam is an unknown quantity at this point
Re: Python Vision Tracking

Nice, We also use python for image processing (Team 3211 from Israel).
Why are you not using UDP or TCP to transfer the data? It is very simple with python, and very simple to get the data in Java / LV..
  #9   Spotlight this post!  
Unread 04-03-2013, 01:19
PaulDavis1968's Avatar
PaulDavis1968 PaulDavis1968 is offline
Embedded Software/Systems Engineer
AKA: Master of Complexity
FRC #2053 (TigerTronics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Endicot NY
Posts: 91
PaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nicePaulDavis1968 is just really nice
Re: Python Vision Tracking

Quote:
Originally Posted by yehudaeitam View Post
Nice, We also use python for image processing (Team 3211 from Israel).
Why are you not using UDP or TCP to transfer the data? It is very simple with python, and very simple to get the data in Java / LV..
But not in c++. (On the robot)
  #10   Spotlight this post!  
Unread 17-02-2013, 16:29
sjspry sjspry is offline
Registered User
FRC #1984
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2010
Location: Kansas
Posts: 125
sjspry has a spectacular aura aboutsjspry has a spectacular aura aboutsjspry has a spectacular aura about
Re: Python Vision Tracking

I really appreciate an example in Python. A lot of people seem to think using multiple languages will be a problem, but the readability of your example might make them reconsider

I like it! My only complaint is that your use of accessor methods is very un-pythonic.
  #11   Spotlight this post!  
Unread 19-02-2013, 20:36
jacob9706 jacob9706 is offline
Registered User
AKA: Jacob Ebey
FRC #3574 (High Tekerz)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Seattle
Posts: 101
jacob9706 is on a distinguished road
Re: Python Vision Tracking

Quote:
Originally Posted by sjspry View Post
I really appreciate an example in Python. A lot of people seem to think using multiple languages will be a problem, but the readability of your example might make them reconsider

I like it! My only complaint is that your use of accessor methods is very un-pythonic.
Thanks. I am VERY new to Python. I realized that it is "un-pythonic" after I was finished. The main reason for doing so though was the sider's take an update method to call when changed, hence the setter methods.

As my mentor said we are using an ODROID-U2.
__________________
/*
* Team 3574 Alumni
*
* 2011 - Highest Seeded Rookie
* 2011 - Rookie All-Star
* 2012 - Engineering Inspiration
* 2012 - Olympic Deans List Winner
* 2013 - Engineering Inspiration
* 2013 - Judges Award (For unique circular robot and the way the team works together.)
*/
Closed Thread


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 03:07.

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


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