Hobby vs University vs Corporate Robotics

Translate This Thread From English to

Threaded View

I was thinking, that there are now, really, three divisions of robotics:

The corporate robotics are meant to be products and perform some useful
function which can be sold. Funding is based on prospective return on the
sale of the product.

The university robotics are meant to experiment on theoretical concepts and
provide proof of concepts, and who's concepts may eventually become part of
some corporate robot system. Funding comes from grants and endowments.

The hobbyist robotics are different, there may not be an advanced concept
being tested -- but there may be, there may not be a commercial product
plan -- again, there may be. Funding comes from our personal wallet.


We hobbyists have a tough road, we don't have the resources. We can't
casually create our dreams as, I don't know about you, our robotics budget
competes with clothing, schools supplies, mortgage/rent, cars, spouses, and
so on.

I look at some of the robotics contests, and think, "I wish I could spend my
time and money on that, I know I could probably win."

Are there any contests that are sufficiently challenging aimed at only the
hobbyist? If not, should there be?

Re: Hobby vs University vs Corporate Robotics


Of course it depends what you mean by "sufficiently challenging".  If
you look at the performance of the robots at the japanese sumo
competitions, it's pretty clear that even this very simple-seeming
competition has a very high ceiling in terms of top performance.  Do
you consider sumo sufficiently challenging?  How about fire fighting?

Personally I'm excited for what I see as the inevitable transition
towards hobbyist robots with vision - even in the simpler competitions
like sumo and firefighting.  The tech is still a little costly, though
I expect it to approach affordable very quickly.  I've heard lots of
folks saying the $75 vision system is the holy grail - I can see that
happening before long.  It'll also present a couple disadvantages at
first, while the bugs are ironed out, so "vision-only" leagues will
have to be formed, I think, to help the tech evolve.

I see the change to sighted robots as a good answer to the question of
sufficiently challenging contests - once a cam's on there, the sky's
the limit as to how complex your strategy can be, even for a simple
sumo.  It really opens up the depth of the simple competitions, while
keeping it possible for beginners to get their feet wet quickly.

My 2c,
Don


Re: Hobby vs University vs Corporate Robotics



 ...

In a contact sport like sumo I think vision has a limited
application except maybe to locate your opponent.

I have been interested in vision at the hobbyist level
for some time and the problem is not cost of the webcam
but rather the cost of the VC++ compiler and the need
to be an expert in VC++ programming which gets messier
with more to learn or relearn every year. Although there
is a myriad of fragmented sources of information on image
acquisition it takes an expert to untangle it all to do
something as simple as grab an image and have access to
its pixel data and display it at a decent rate.

Essentially there is no simple basic vision platform for
a hobbyist to use to play with vision because I guess it
would have a very limited audience.

I think there is a threshold of performance that a vision
system would require to say navigate a robot and that will
require the computing power of a modern PC.

--
JC


Re: Hobby vs University vs Corporate Robotics



    Well, you could use Linux and GCC.

    If you think the cost of the compiler is the major problem
in vision processing, you have no clue how hard the problem is.

    There's been some real progress recently, though.  Take
a look at how the vision system for Stanford's DARPA Grand
Challenge vehicle works.  I'm very impressed with that.
Finally, decent texture matching on real-world images.

                John Nagle

Re: Hobby vs University vs Corporate Robotics



I think you misunderstood what I was saying.

--
JC


Re: Hobby vs University vs Corporate Robotics


This is what has stopped me from experimenting with vision
processing on the PC.

Rich


Re: Hobby vs University vs Corporate Robotics



JC wrote:

aiiadict@gmail.com wrote:


If you have VC++ you could experiment with vision
using the QCSDK?

http://www.generation5.org/articles.asp?Action=List&Topic=Machine+Vision

I have been giving it a second go to see if I can
get something up and running.

And I have thought of learning to program in JAVA
as it has web cam support. I am not sure how fast
it would be compared with VC++.

http://www.generation5.org/jdk/

--
JC


Re: Hobby vs University vs Corporate Robotics

"JGCASEY"
<snip>

About 3 years ago, I took a computer vision class for my master degree
program. I was shocked when the professor told that assignments would be
performed in java. I had never thought java could be used for such things,
but after finishing that class and getting a closer look at java 2D classes,
I changed my mind. It offers plenty of resources to do image processing.
There is always the issue of performance/real time computation though.

I'm not a java fan though.

Padu



Re: Hobby vs University vs Corporate Robotics

Have you checked out OpenCV from Intel? I was able to install and
configure the library on Linux with Python wrappers that allow access
to all the high performance vision functions through the very nice and
relatively intuitive interface of Python. Though I'm a second year
graduate student, I've never taken a formal computer vision course, and
my BS is in mechanical engineering. I do have several years of
experience programming in Java, but I can't say that that did much of
anything for me.

However, I'm trying to use 2D vision for feedback in automated assembly
of sub-centimeter robots. If you're interested in mobile, autonomous
robots the overhead and speed of a Python installation might not be the
best choice for you, but from a testing and debugging standpoint, may
still be useful. BTW, Stanford's Grand Challenge vehicle, Stanley, made
extensive use of the OpenCV library (though I imagine they used the C++
library directly instead of through some wrappers). From my experience
installing, configuring, and using it, I'd say it's not "plug 'n'
play," but it's also not so hard that you'll give up before making any
progress.


Re: Hobby vs University vs Corporate Robotics


    I've used it.  If you're into vision processing,
build it and run the demos.

    The algorithms are of varying quality.  The
LK feature tracker is quite good.  The stereo
algorithms are mediocre.  The checkerboard
camera calibrator will, about 20% of the time,
produce totally bogus results.

            John Nagle

Re: Hobby vs University vs Corporate Robotics




John Nagle wrote:


So if they are of varying quality why would
you bother?  The whole idea is to understand
how these algorithms work and how to improve
or replace them yourself assuming they are
of any relevance to the robotic vision problem.


It is one thing to have the Sobel line method
but then what?? I use methods that give the
data that is relevant to the actual problem
I am trying to solve. I don't need a library
of fancy stuff I will never use.


In a previous post in the thread you wrote:

Well I have a very good clue. I am not talking
human vision. I am talking about doing what I have
*already done* in DOS using the first Quickcam
but with a fast cpu with plenty of memory and
the option of color. I am talking simple robotic
vision for which I do have a clue.

Taking off two years to become a accredited M$
Windoze programmer isn't something I want to do
just so I can grab an image, access the pixel
data, and display results during development
and have a programming language that has the
speed of assembler or C in DOS without all the
bullshit which a hobbyist can do without.

I did consider Power Basic, it even has inline
assembler, but they would not guarantee the
availability of a means to access a web cam.
I would still have to learn all that is required
for DirectX etc and write my own DLL to work
with Power Basic.

I almost bought a book a couple of years ago
where a programmer provided a shell to give
novice game programmers the tools to do graphics
at a decent speed and now I regret not doing so.

The only shell I have is TRIPOD using the QCSDK.
It is ok for testing some things (about 3 frames
per second max).

--
JC


Re: Hobby vs University vs Corporate Robotics



huh ?
why do you need vc++ ?

vc++ is one of a number of c++ compilers.

free borland c++ compiler
multiple gcc ports:
cygwin and mingw

It depends on what you are using for the brains
and if you pick a pc base, why use windows ?

I suggest you have a look at DJ Newmans book
Linux Robotics


Vision with a dsp dev board is a lot more simple than you make out.
I'm no expert but if you have a dsp dev board with examples
from analog or TI, it is not very complex at all to grab an image and
process it.

Some security cameras use 200MHz xscale chips to run them and image
capturing
from cmos camera. Can't do much with them as not enough cpu power
and no ability to load your own programs.
www.mobotix.com

Decent rate depends on what you are doing with it, size of the image etc.


They exist but aren't dirt cheap.
See how fast the dsp dev boards capable of this get snatched up on ebay etc.


Wrong again. Need to use the correct chip for the job.
Having a separate chip/ mini board adds cost but
simplifies. A floating point chip also makes things easier but again more
costly.

Processing using fixed point can be complex but would only need
a few  libraries to be written and shared.

Blackfin stamp would probably be the cheapest of the dsp dev boards at
approx US$170.
BF533@500 + 128MB ram or the BF537
Have choice of analog devices compiler or gcc.

Vision systems is also done in fpgas but requires knowledge of vhdl or
verilog.

I'm luckly enough to have the luxory of playing with TI EVM DM642, TI
dsk6713 and
cradle blue gill and RDS3600 boards www.cradle.com

May be worth having a read of
Embedded Image Processing on the
TMS320C6000T DSP: Examples in Code Composer StudioT and MATLAB
by Shehrzad Qureshi
Won't tell you how to do image processing
for robotics but is a good start for working with video on TI's C6400 chips
http://www.squreshi.com/


Alex



Re: Hobby vs University vs Corporate Robotics



Forgot to say you can get free(unsupported ) versions of Intels c++ and
fortran compilers along with
maths library , ipp etc for linux.

When you have ipp installed , opencv uses it to speed up some functions.

If have have never used linux before and don't know where to start
get a copy of knoppix , which is a live cd, that is linux runs from the cd.
Easy way to give it a try with out having to install anything.

Should have gcc with c and c++ support in it.

Using gcc at the commandline / console is pretty easy
on any platform.
Knoppix is a version of the debian linux distribution.

Alex



Re: Hobby vs University vs Corporate Robotics



Knoppix played havoc with my WindowXP system and I had
to fix up the Bios so I gave it a miss. When I update
my computer I will put Linux on this one to play with.
However Linux is yet more to learn and after a while
you get sick of having to learn the latest to do what
you could already do on the older system, but not as
fast or with as much memory or with the latest hardware.

John


Re: Hobby vs University vs Corporate Robotics


 ...

Why not just create your own challenge and work on that?
Do you need the competition and the accolades of winning
to motivate yourself?

--
JC


Re: Hobby vs University vs Corporate Robotics



Having something to shoot for and a fixed deadline have a wonderful way of
making you focus.

Re: Hobby vs University vs Corporate Robotics

ok

contest:

6 month deadline

goal:
make virtual robot navigate maze using
only vision sensors while shooting bad guys

software:  windows, doom (language/compiler of your choice)
hardware: PC, vision sensors


create a computer program that will play
the game "doom", using visual sensors
only.


computer#1          >vision                 >#2 computer running vision
w/ game               >sensors----------->s/w

computer #2 will be connected to computer #1 in the following way:
computer #2 gets vision input, detects edges, enemies, decides
                     what action should be taken in the game.  It sends
a keyboard command
                     to doom, running on computer#1, IE move
fd/bk/lt/rt, shoot, etc

restrictions: cannot use the MAP feature of doom.  you must create your
own map.

prize:  self gratification, accomplishing a goal, one step closer to
having that vision
software for your robot completed.  

Rich


Re: Hobby vs University vs Corporate Robotics

contest deadline:  september 1st, 2006

signup deadline: march1st, 2006

signup;  email aiiadict @ gmaild DOT com


Site Timeline