Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

beobot-GSnav-dorsal.C File Reference


Detailed Description

Robot navigation using saliency and gist. Run beobot-GSnav-master at CPU_A to run Gist-Saliency model Run beobot-GSnav at CPU_B to run SIFT

Definition in file beobot-GSnav-dorsal.C.

#include "Beowulf/Beowulf.H"
#include "Component/ModelManager.H"
#include "Raster/Raster.H"
#include "GUI/XWinManaged.H"
#include "Image/Image.H"
#include "Image/Pixels.H"
#include "Util/Timer.H"
#include "Beobot/beobot-GSnav-def.H"
#include "Beobot/BeobotBrainMT.H"
#include <signal.h>
#include "Image/OpenCVUtil.H"
#include "Image/ShapeOps.H"
#include "Image/CutPaste.H"
#include "Image/MathOps.H"
#include "Image/DrawOps.H"

Include dependency graph for beobot-GSnav-dorsal.C:

Go to the source code of this file.

Defines

#define WINSIZE   7
#define templThresh   2000.0F

Functions

void getTrackCommand (TCPmessage &rmsg, int32 rframe, int32 rnode, int32 raction, ImageSet< float > &cmap, bool &resetCurrLandmark, std::vector< Point2D< int > > &clmpt, bool &resetNextLandmark, std::vector< Point2D< int > > &nlmpt)
 get the request sent by Visual Cortex
void processTrackCommand (ImageSet< float > cmap, std::vector< ImageSet< float > > &clmbias, std::vector< Point2D< int > > &clmbiasOffset, std::vector< ImageSet< float > > &nlmbias, std::vector< Point2D< int > > &nlmbiasOffset, bool resetCurrLandmark, std::vector< Point2D< int > > &clmpt, std::vector< Point2D< int > > &prevClmptsc, bool resetNextLandmark, std::vector< Point2D< int > > &nlmpt, std::vector< Point2D< int > > &prevNlmptsc, rutz::shared_ptr< XWinManaged > dispWin)
 process the request of the Visual Cortex
void setupTrackingResultPacket (TCPmessage &smsg, int rframe, std::vector< Point2D< int > > clmpt, std::vector< Point2D< int > > nlmpt)
 setup the tracking result packet to be sent to Visual Cortex
ImageSet< float > setNewBias (Point2D< int > inTrackLoc, Point2D< int > &biasOffset, ImageSet< float > cmap, rutz::shared_ptr< XWinManaged > dispWin)
 resets the bias template to the region around the point passed
Point2D< int > trackPoint (ImageSet< float > cmap, ImageSet< float > &bias, Point2D< int > biasOffset, Point2D< int > trackLoc, rutz::shared_ptr< XWinManaged > dispWin)
 track the object at the point
void updateTemplate (Point2D< int > upLeft, ImageSet< float > cmap, ImageSet< float > &bias, rutz::shared_ptr< XWinManaged > dispWin)
 update the template used for tracking
Image< float > getBiasedSMap (ImageSet< float > cmap, ImageSet< float > bias, rutz::shared_ptr< XWinManaged > dispWin)
 get the biased saliency map for tracking
void terminate (int s)
 Signal handler (e.g., for control-C).
int main (const int argc, const char **argv)

Variables

static bool goforever = true
 Will turn false on interrupt signal.


Function Documentation

Image< float > getBiasedSMap ImageSet< float >  cmap,
ImageSet< float >  bias,
rutz::shared_ptr< XWinManaged dispWin
 

get the biased saliency map for tracking

Definition at line 618 of file beobot-GSnav-dorsal.C.

References h, i, img2ipl(), LFATAL, NUM_CHANNELS, w, WINSIZE, and ZEROS.

Referenced by trackPoint().

void getTrackCommand TCPmessage rmsg,
int32  rframe,
int32  rnode,
int32  raction,
ImageSet< float > &  cmap,
bool &  resetCurrLandmark,
std::vector< Point2D< int > > &  clmpt,
bool &  resetNextLandmark,
std::vector< Point2D< int > > &  nlmpt
 

get the request sent by Visual Cortex

Definition at line 308 of file beobot-GSnav-dorsal.C.

References TCPmessage::getElementFloatImaSet(), TCPmessage::getElementInt32(), i, LINFO, and TCPmessage::reset().

Referenced by main().

void processTrackCommand ImageSet< float >  cmap,
std::vector< ImageSet< float > > &  clmbias,
std::vector< Point2D< int > > &  clmbiasOffset,
std::vector< ImageSet< float > > &  nlmbias,
std::vector< Point2D< int > > &  nlmbiasOffset,
bool  resetCurrLandmark,
std::vector< Point2D< int > > &  clmpt,
std::vector< Point2D< int > > &  prevClmptsc,
bool  resetNextLandmark,
std::vector< Point2D< int > > &  nlmpt,
std::vector< Point2D< int > > &  prevNlmptsc,
rutz::shared_ptr< XWinManaged dispWin
 

process the request of the Visual Cortex

Definition at line 351 of file beobot-GSnav-dorsal.C.

References ImageSet< T >::clear(), dispWin, i, LFATAL, LINFO, ImageSet< T >::push_back(), setNewBias(), ImageSet< T >::size(), and sml.

Referenced by main().

ImageSet< float > setNewBias Point2D< int >  inTrackLoc,
Point2D< int > &  biasOffset,
ImageSet< float >  cmap,
rutz::shared_ptr< XWinManaged dispWin
 

resets the bias template to the region around the point passed

Definition at line 456 of file beobot-GSnav-dorsal.C.

References crop(), h, i, Point2D< T >::i, Point2D< T >::j, LINFO, NUM_CHANNELS, target, w, and WINSIZE.

Referenced by processTrackCommand().

void setupTrackingResultPacket TCPmessage smsg,
int  rframe,
std::vector< Point2D< int > >  clmpt,
std::vector< Point2D< int > >  nlmpt
 

setup the tracking result packet to be sent to Visual Cortex

Definition at line 433 of file beobot-GSnav-dorsal.C.

References TCPmessage::addInt32(), i, LINFO, TCPmessage::reset(), ImageSet< T >::size(), and TRACK_LM_RES.

Referenced by main().

void terminate int  s  ) 
 

Signal handler (e.g., for control-C).

Definition at line 144 of file beobot-GSnav-dorsal.C.

References goforever, and LERROR.

Point2D< int > trackPoint ImageSet< float >  cmap,
ImageSet< float > &  bias,
Point2D< int >  biasOffset,
Point2D< int >  trackLoc,
rutz::shared_ptr< XWinManaged dispWin
 

track the object at the point

Definition at line 513 of file beobot-GSnav-dorsal.C.

References Image< T >::beginw(), dispWin, Point2D< T >::distance(), Image< T >::endw(), findMin(), getBiasedSMap(), Image< T >::getWidth(), h, i, sqrt(), lobot::stop(), updateTemplate(), w, x, and y.

void updateTemplate Point2D< int >  upLeft,
ImageSet< float >  cmap,
ImageSet< float > &  bias,
rutz::shared_ptr< XWinManaged dispWin
 

update the template used for tracking

Definition at line 590 of file beobot-GSnav-dorsal.C.

References crop(), distance(), i, LINFO, NUM_CHANNELS, target, templThresh, and WINSIZE.

Referenced by trackPoint().


Variable Documentation

bool goforever = true [static]
 

Will turn false on interrupt signal.

Definition at line 95 of file beobot-GSnav-dorsal.C.


Generated on Sun Nov 22 13:43:28 2009 for iLab Neuromorphic Vision Toolkit by  doxygen 1.4.4