Go to Post Life? What's a life? I mean, outside of [I]FIRST[/I], that is. - Blue_Mist [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #151   Spotlight this post!  
Unread 01-03-2018, 12:02 PM
gerthworm's Avatar
gerthworm gerthworm is offline
Making the 1's and 0's
FRC #1736 (Robot Casserole)
Team Role: Mentor
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Peoria, IL
Posts: 331
gerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond reputegerthworm has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by kylelanman View Post
Nifty, TIL! Thanks!
Reply With Quote
  #152   Spotlight this post!  
Unread 01-03-2018, 04:36 PM
buckskinner1776 buckskinner1776 is offline
Registered User
FRC #3098
 
Join Date: Jan 2015
Location: Waterford
Posts: 23
buckskinner1776 is an unknown quantity at this point
Re: JeVois Smart Machine Vision

I've been attempting to make this camera work using OBS, GRIP and CuteCom on RPI. Not all at the same time. I've been following the design simple guide by rajamani that's been posted elsewhere through this thread.

I got through the portion where we replace the config and modules folders from the jevois load with those from rajamani. When I tried to run GRIP, I keep getting a camera server crashed notice in the first block. I can replace the camera source with the webcam on the laptop and it works fine.

I went back and copied the original jevois config and modules folders back into the jevois files on the sd card and I still have the same issue. camera server crashed.

OBS sees through it just fine though. I'm not running OBS and GRIP at the same time. Any ideas on this issue? The host is win8.1 x64.

The laptop webcam appears to be webcam1 and I'm assuming the jevois is webcam0. That is an assumption. I'm not sure how to verify this. I did try webcam2 for grins and still had the same issue.
Reply With Quote
  #153   Spotlight this post!  
Unread 01-03-2018, 05:21 PM
Bonestoo's Avatar
Bonestoo Bonestoo is offline
Registered User
AKA: Eric
FRC #0068 (Truck Town Thunder)
Team Role: Mechanical
 
Join Date: May 2017
Rookie Year: 2008
Location: Milford, MI
Posts: 19
Bonestoo is on a distinguished road
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by Hjelstrom View Post
You can compute distance directly if you know the mounting angle of your camera and can convert your pixel coordinates to angles.

tan(a1+a2) = (h2-h1) / d

d = (h2-h1) / tan(a1+a2)
I was looking at Limelight's documentation just last night and was reading up on how to find distance actually

This might be an obvious question, but is the best way to convert pixels to angles to just measure it? Or would it be to find the angle per pixel in the horizontal direction with the FOV and then use that for my vertical angle? So like since I'm using a resolution of 320x240 and the horizontal FOV is 65 degrees so I have 4.92 pixels per degree in the horizontal and can use that to find my vertical angle as well as my horizontal?
Reply With Quote
  #154   Spotlight this post!  
Unread 01-03-2018, 05:28 PM
laurentitti's Avatar
laurentitti laurentitti is offline
Registered User
no team
 
Join Date: Dec 2017
Location: Los Angeles
Posts: 12
laurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud oflaurentitti has much to be proud of
Re: JeVois Smart Machine Vision

Happy new year everyone!

JeVois 1.6.1 is out and includes the teaser module I posted about just before Christmas. Just download the latest microSD image from jevois.org to try it out and see:

http://jevois.org/tutorials/UserFirstVision.html

http://jevois.org/moddoc/FirstVision/modinfo.html and
http://jevois.org/basedoc/FirstVision_8C_source.html

As noted, please use http://jevois.org/qa for general questions and we will help you. Sometimes I lack time to read this thread here. A few answers though:

- the sensor chip is an OV9653 which is the RoHS version of the OV9650. All we have in terms of lens specs is here: http://jevois.org/doc/Hardware.html but read on for more.

- in the FirstVision example, I used OpenCV camera calibration code and then I am able to locate the target in 3D space. It seems reasonably accurate with 320x240, gets sketchy at 176x144. The calibration is achieved by showing a checkerboard with known check size under many different viewpoints and solving for a camera matrix and distortion coefficients. Once you have this (included with the module as a bunch of config files), you can use it in conjunction with the known physical size of your object to recover its pose and spatial location. If you enable the serial messages in the example FirstVision module, the Z coordinate of the object in the serial message will tell you how far it is from the camera, in millimeters. This is based on standard OpenCV routines (solvePnP) which you should be able to port to python from our C++ source. You also get a quaternion that tells you the orientation of the object in space, and also X and Y coordinates in mm. This may be more accurate than the arctan() method and/or trying to estimate the lens characteristics from sensor size and (missing) lens specs.

- yes, please do not directly connect RS232 to JeVois, the electrical signaling is not compatible, you need a TTL-level UART.

- for g_ether, in principle we could add it, but something else will have to go as we are out of endpoints (the hardware only supports 8, currently that's 1 for ep0, 2 for camera, 3 for serial, and 2 for mass storage). If there is a strong case for it, we could make it an option. Now, does it really simplify things a lot? Since the physical connection is USB as opposed to RJ45 anway, you may still need to run some code on your host computer (e.g., some TCP/IP bridge?), which is kind of the same as running a little daemon that grabs from JeVois serial and reposts over TCP/IP to your network?

We'll start looking into GRIP integration in more details now.
Reply With Quote
  #155   Spotlight this post!  
Unread 01-03-2018, 05:41 PM
buckskinner1776 buckskinner1776 is offline
Registered User
FRC #3098
 
Join Date: Jan 2015
Location: Waterford
Posts: 23
buckskinner1776 is an unknown quantity at this point
Re: JeVois Smart Machine Vision

Jevois just put out a new update with a FIRST specific example. Look under latest news at jevois.org. It's posted 1/3/2018. Update 1.6.1. I haven't found where to actually get the update from yet as it does not show up on the software downloads page. That one is still 1.6.0-8G I believe.

http://jevois.org/moddoc/FirstVision/modinfo.html

http://jevois.org/tutorials/UserFirstVision.html
Reply With Quote
  #156   Spotlight this post!  
Unread 01-03-2018, 05:44 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: 216
Hjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by Bonestoo View Post
I was looking at Limelight's documentation just last night and was reading up on how to find distance actually

This might be an obvious question, but is the best way to convert pixels to angles to just measure it? Or would it be to find the angle per pixel in the horizontal direction with the FOV and then use that for my vertical angle? So like since I'm using a resolution of 320x240 and the horizontal FOV is 65 degrees so I have 4.92 pixels per degree in the horizontal and can use that to find my vertical angle as well as my horizontal?
Oh I should probably move this to its own page or something because I have that written up here:

http://docs.limelightvision.io/en/la...xels-to-angles

It's not actually linear the way you're describing although I bet you can make your system work just fine anyway (we've done that in the past). At one point I graphed the difference between a linear interpolation like you describe and the "real" solution and its not that big as long as your FOV is not large. If you have a large FOV then the two calculations diverge greatly. Anyway hopefully the above explanation makes sense. If it doesn't let me know and I'll try to improve it.
Reply With Quote
  #157   Spotlight this post!  
Unread 01-03-2018, 07:46 PM
Bonestoo's Avatar
Bonestoo Bonestoo is offline
Registered User
AKA: Eric
FRC #0068 (Truck Town Thunder)
Team Role: Mechanical
 
Join Date: May 2017
Rookie Year: 2008
Location: Milford, MI
Posts: 19
Bonestoo is on a distinguished road
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by Hjelstrom View Post
Oh I should probably move this to its own page or something because I have that written up here:

http://docs.limelightvision.io/en/la...xels-to-angles

It's not actually linear the way you're describing although I bet you can make your system work just fine anyway (we've done that in the past). At one point I graphed the difference between a linear interpolation like you describe and the "real" solution and its not that big as long as your FOV is not large. If you have a large FOV then the two calculations diverge greatly. Anyway hopefully the above explanation makes sense. If it doesn't let me know and I'll try to improve it.
Ah thanks! I must've missed that page when I was looking over Limelight's site. That's probably the best I've seen the math explained. I've been trying to understand how to get vertical angle and your pictures are actually pretty great.

Now it seems that if you have your vertical FOV finding your vertical angle is relatively easy. Jevois gives that it has a 65 degree horizontal FOV and a 4:3 aspect ratio so can I use this calculator to find the vertical FOV? Which looks to be 52 degrees?
Reply With Quote
  #158   Spotlight this post!  
Unread 01-03-2018, 08:21 PM
billbo911's Avatar
billbo911 billbo911 is offline
I prefer you give a perfect effort.
AKA: That's "Mr. Bill"
FRC #2073 (EagleForce)
Team Role: Mentor
 
Join Date: Mar 2005
Rookie Year: 2005
Location: Elk Grove, Ca.
Posts: 2,603
billbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by buckskinner1776 View Post
Jevois just put out a new update with a FIRST specific example. Look under latest news at jevois.org. It's posted 1/3/2018. Update 1.6.1. I haven't found where to actually get the update from yet as it does not show up on the software downloads page. That one is still 1.6.0-8G I believe.

http://jevois.org/moddoc/FirstVision/modinfo.html

http://jevois.org/tutorials/UserFirstVision.html
I just took a quick look. For some reason 1.6.1 is listed in the "Archived Downloads" section.
__________________
CalGames 2009 Autonomous Champion Award winner
2011 Sacramento Finalist, 2011 Madtown Engineering Inspiration Award.
2012 Sacramento Semi-Finals, 2012 Sacramento Innovation in Control Award, 2012 SVR Judges Award.
2012 CalGames Autonomous Challenge Award winner ($$$).
2014 2X Rockwell Automation: Innovation in Control Award (CVR and SAC).
Curie Division Gracious Professionalism Award.
2014 Capital City Classic Winner AND Runner Up. Madtown Throwdown: Runner up.
2015 Innovation in Control Award, Sacramento.
2016 Chezy Champs Finalist, 2016 MTTD Finalist
2017 Utah Regional Winner!, Sacramento Finalist, Newton/Carver Innovation in Control, Newton #5 Captain

Last edited by billbo911 : 01-03-2018 at 09:28 PM.
Reply With Quote
  #159   Spotlight this post!  
Unread 01-03-2018, 09:37 PM
asid61's Avatar
asid61 asid61 is offline
Design Simple
AKA: Anand Rajamani
FRC #1072 (Harker Robotics)
Team Role: Mentor
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Cupertino, CA
Posts: 2,713
asid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by buckskinner1776 View Post
I've been attempting to make this camera work using OBS, GRIP and CuteCom on RPI. Not all at the same time. I've been following the design simple guide by rajamani that's been posted elsewhere through this thread.

I got through the portion where we replace the config and modules folders from the jevois load with those from rajamani. When I tried to run GRIP, I keep getting a camera server crashed notice in the first block. I can replace the camera source with the webcam on the laptop and it works fine.

I went back and copied the original jevois config and modules folders back into the jevois files on the sd card and I still have the same issue. camera server crashed.

OBS sees through it just fine though. I'm not running OBS and GRIP at the same time. Any ideas on this issue? The host is win8.1 x64.

The laptop webcam appears to be webcam1 and I'm assuming the jevois is webcam0. That is an assumption. I'm not sure how to verify this. I did try webcam2 for grins and still had the same issue.
FWIW, I would run Spectrum's code. It's based on my code but has definite improvements.
Open up the videomappings.cfg file and change where the asterisk is. Try putting it on a different mapping and see if that fixes the problem.
__________________
Team 1072 2017-present
Team 299 2017
Team 115 2013-2016



Reply With Quote
  #160   Spotlight this post!  
Unread 01-04-2018, 12:54 AM
Bonestoo's Avatar
Bonestoo Bonestoo is offline
Registered User
AKA: Eric
FRC #0068 (Truck Town Thunder)
Team Role: Mechanical
 
Join Date: May 2017
Rookie Year: 2008
Location: Milford, MI
Posts: 19
Bonestoo is on a distinguished road
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by Hjelstrom View Post
Oh I should probably move this to its own page or something because I have that written up here:

http://docs.limelightvision.io/en/la...xels-to-angles

It's not actually linear the way you're describing although I bet you can make your system work just fine anyway (we've done that in the past). At one point I graphed the difference between a linear interpolation like you describe and the "real" solution and its not that big as long as your FOV is not large. If you have a large FOV then the two calculations diverge greatly. Anyway hopefully the above explanation makes sense. If it doesn't let me know and I'll try to improve it.

What would you consider a large fov? 120 or 180 degrees is obviously large, but how's 65 like on the jevois?
Reply With Quote
  #161   Spotlight this post!  
Unread 01-04-2018, 01:51 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: 216
Hjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond reputeHjelstrom has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by Bonestoo View Post
What would you consider a large fov? 120 or 180 degrees is obviously large, but how's 65 like on the jevois?
I have a spreadsheet that computes both. Looks like 65 is not that big of a deal if you look at the attached image.
Attached Thumbnails
Click image for larger version

Name:	65Fov_LinearVsTrueAngle.jpg
Views:	55
Size:	27.2 KB
ID:	22809  
Reply With Quote
  #162   Spotlight this post!  
Unread 01-04-2018, 09:29 PM
42!'s Avatar
42! 42! is offline
Registered User
FRC #2085
Team Role: Mentor
 
Join Date: Mar 2011
Rookie Year: 2009
Location: CA
Posts: 56
42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future42! has a brilliant future
Re: JeVois Smart Machine Vision

So this seems like the best place to post this. Nothing major but been working on adaptation of 2073's vision code for my team to use.
https://github.com/cmporter42/DogTrack
Changes include going from HSV filtering to the Green-Red method outlined here: https://www.chiefdelphi.com/forums/s...57#post1713557
Also adding aspect ratio filtering, angular output, and multiple object tracking. Thanks to 2073 for the amazing work they did that made this all possible.
Reply With Quote
  #163   Spotlight this post!  
Unread 01-04-2018, 10:20 PM
billbo911's Avatar
billbo911 billbo911 is offline
I prefer you give a perfect effort.
AKA: That's "Mr. Bill"
FRC #2073 (EagleForce)
Team Role: Mentor
 
Join Date: Mar 2005
Rookie Year: 2005
Location: Elk Grove, Ca.
Posts: 2,603
billbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond reputebillbo911 has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by 42! View Post
So this seems like the best place to post this. Nothing major but been working on adaptation of 2073's vision code for my team to use.
https://github.com/cmporter42/DogTrack
Changes include going from HSV filtering to the Green-Red method outlined here: https://www.chiefdelphi.com/forums/s...57#post1713557
Also adding aspect ratio filtering, angular output, and multiple object tracking. Thanks to 2073 for the amazing work they did that made this all possible.
This is exactly why we do what we do!
GO RoboDogs!!
See you Saturday?
We will see you in Sac!
__________________
CalGames 2009 Autonomous Champion Award winner
2011 Sacramento Finalist, 2011 Madtown Engineering Inspiration Award.
2012 Sacramento Semi-Finals, 2012 Sacramento Innovation in Control Award, 2012 SVR Judges Award.
2012 CalGames Autonomous Challenge Award winner ($$$).
2014 2X Rockwell Automation: Innovation in Control Award (CVR and SAC).
Curie Division Gracious Professionalism Award.
2014 Capital City Classic Winner AND Runner Up. Madtown Throwdown: Runner up.
2015 Innovation in Control Award, Sacramento.
2016 Chezy Champs Finalist, 2016 MTTD Finalist
2017 Utah Regional Winner!, Sacramento Finalist, Newton/Carver Innovation in Control, Newton #5 Captain
Reply With Quote
  #164   Spotlight this post!  
Unread 01-04-2018, 10:28 PM
marshall's Avatar
marshall marshall is offline
Discerning and exacting individual
FRC #0900 (The Zebracorns)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2003
Location: North Carolina
Posts: 2,316
marshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond reputemarshall has a reputation beyond repute
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by 42! View Post
So this seems like the best place to post this. Nothing major but been working on adaptation of 2073's vision code for my team to use.
https://github.com/cmporter42/DogTrack
Changes include going from HSV filtering to the Green-Red method outlined here: https://www.chiefdelphi.com/forums/s...57#post1713557
Also adding aspect ratio filtering, angular output, and multiple object tracking. Thanks to 2073 for the amazing work they did that made this all possible.
Cool... has anyone looked at LAB color space on the JeVois or for anything for FRC? I was reading about it and I suspect it might do a better job at filtering.
__________________
"La mejor salsa del mundo es la hambre" - Miguel de Cervantes
"The future is unwritten" - Joe Strummer
"Simplify, then add lightness" - Colin Chapman
Clarke's Laws
Reply With Quote
  #165   Spotlight this post!  
Unread 01-04-2018, 11:05 PM
Bonestoo's Avatar
Bonestoo Bonestoo is offline
Registered User
AKA: Eric
FRC #0068 (Truck Town Thunder)
Team Role: Mechanical
 
Join Date: May 2017
Rookie Year: 2008
Location: Milford, MI
Posts: 19
Bonestoo is on a distinguished road
Re: JeVois Smart Machine Vision

Quote:
Originally Posted by 42! View Post
So this seems like the best place to post this. Nothing major but been working on adaptation of 2073's vision code for my team to use.
https://github.com/cmporter42/DogTrack
Changes include going from HSV filtering to the Green-Red method outlined here: https://www.chiefdelphi.com/forums/s...57#post1713557
Also adding aspect ratio filtering, angular output, and multiple object tracking. Thanks to 2073 for the amazing work they did that made this all possible.
What are the benefits of doing your processing this way? Is it less susceptible to other light sources like windows than when compared to normal hsv tuning or maybe more reliable? It seems to be a less convenient or at least less popular way of tuning. I'm trying to get a sense of why you might want to tune in this way.
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 12:19 PM.

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


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