Projekt Luna  1.0.1
Der humanoide Roboter
Klassen | Makrodefinitionen | Funktionen | Variablen
luna.cpp-Dateireferenz
#include "luna.h"
#include "LunaOpenCVInterface.cpp"

Klassen

struct  size_t
 
struct  Memory
 
struct  Environment
 

Makrodefinitionen

#define MAX_FILENAME_LENGTH   256
 
#define MinValue(A, B)   (((A) < (B)) ? (A) : (B))
 
#define MaxValue(A, B)   (((A) > (B)) ? (A) : (B))
 
#define ClampValue(value, lowerBound, upperBound)   MaxValue(MinValue(value, upperBound), lowerBound)
 
#define MAX_KERNEL_LENGTH   31
 
#define Assert(condition)   if(condition) { *(*int) = 0; }
 
#define PushStruct(arena, type)   (type *)PushSize_(arena, sizeof(type))
 
#define PushArray(arena, count, type)   (type *)PushSize_(arena, count*sizeof(type))
 
#define Kilobytes(value)   ((value)*1024LL)
 
#define Megabytes(value)   (Kilobytes(value)*1024LL)
 
#define Gigabytes(value)   (Megabytes(value)*1024LL)
 
#define Terabytes(value)   (Gigabytes(value)*1024LL)
 

Funktionen

int32 DisplayCaption (char *caption)
 
int32 DisplayDst (int delay)
 
void CannyThreshold (int, void *)
 
void OnTrackbarChange (int trackbarPosition, void *userData)
 
bool32 LoadImages (char fileList[][MAX_FILENAME_LENGTH], int32 imageCount, CvMat *imageList[], int32 colorMode)
 
internal_func InitializeArena (MemoryArena *arena, memoryIndex size, uint8 *base)
 
internal_func void * PushSize_ (MemoryArena *arena, memoryIndex size)
 
int main (int argc, char *argv[])
 

Variablen

global_variable CvMat * g_Src = {}
 
global_variable CvMat * g_Dst = {}
 
global_variable CvMat * g_SrcGray = {}
 
global_variable CvMat * g_DetectedEdges = {}
 
global_variable char g_WindowName [] = "Disparity Map"
 
global_variable int32 g_LowThreshold
 
global_variable int32 g_MaxLowThreshold = 100
 
CvMat * imageLeft = 0
 
CvMat * imageRight = 0
 
CvMat * imageDisparity16S = 0
 
CvMat * imageDisparity8U = 0
 
CvStereoBMState * stereoBMState = 0
 
struct Memory Size
 
uint8Base
 
memoryIndex Used
 
MemoryArena Arena
 

Makro-Dokumentation

#define Assert (   condition)    if(condition) { *(*int) = 0; }
#define ClampValue (   value,
  lowerBound,
  upperBound 
)    MaxValue(MinValue(value, upperBound), lowerBound)
#define Gigabytes (   value)    (Megabytes(value)*1024LL)
struct Environment Kilobytes (   value)    ((value)*1024LL)
#define MAX_FILENAME_LENGTH   256
#define MAX_KERNEL_LENGTH   31
#define MaxValue (   A,
 
)    (((A) > (B)) ? (A) : (B))
#define Megabytes (   value)    (Kilobytes(value)*1024LL)
#define MinValue (   A,
 
)    (((A) < (B)) ? (A) : (B))
#define PushArray (   arena,
  count,
  type 
)    (type *)PushSize_(arena, count*sizeof(type))
#define PushStruct (   arena,
  type 
)    (type *)PushSize_(arena, sizeof(type))
#define Terabytes (   value)    (Gigabytes(value)*1024LL)

Dokumentation der Funktionen

void CannyThreshold ( int  ,
void *   
)

Reduce noise with a kernel 3x3

Canny detector

Using Canny's output as a mask, we display our result

int32 DisplayCaption ( char *  caption)
int32 DisplayDst ( int  delay)
internal_func InitializeArena ( MemoryArena *  arena,
memoryIndex  size,
uint8 base 
)
bool32 LoadImages ( char  fileList[][MAX_FILENAME_LENGTH],
int32  imageCount,
CvMat *  imageList[],
int32  colorMode 
)
int main ( int  argc,
char *  argv[] 
)
void OnTrackbarChange ( int  trackbarPosition,
void *  userData 
)
internal_func void* PushSize_ ( MemoryArena *  arena,
memoryIndex  size 
)

Variablen-Dokumentation

MemoryArena Arena
uint8* Base
global_variable CvMat* g_DetectedEdges = {}
global_variable CvMat* g_Dst = {}
global_variable int32 g_LowThreshold
global_variable int32 g_MaxLowThreshold = 100
global_variable CvMat* g_Src = {}
global_variable CvMat* g_SrcGray = {}
global_variable char g_WindowName[] = "Disparity Map"
CvMat* imageDisparity16S = 0
CvMat* imageDisparity8U = 0
CvMat* imageLeft = 0
CvMat* imageRight = 0
struct Memory Size
CvStereoBMState* stereoBMState = 0
memoryIndex Used