Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of gr-peach-opencv-project by
define.h
00001 #ifndef DEFINE_H 00002 #define DEFINE_H 00003 00004 #define VIDEO_CVBS (0) /* Analog Video Signal */ 00005 #define VIDEO_CMOS_CAMERA (1) /* Digital Video Signal */ 00006 #define VIDEO_YCBCR422 (0) 00007 #define VIDEO_RGB888 (1) 00008 #define VIDEO_RGB565 (2) 00009 00010 /**** User Selection *********/ 00011 /** Camera setting **/ 00012 #define VIDEO_INPUT_METHOD (VIDEO_CMOS_CAMERA) /* Select VIDEO_CVBS or VIDEO_CMOS_CAMERA */ 00013 #define VIDEO_INPUT_FORMAT (VIDEO_RGB565 ) /* Select VIDEO_YCBCR422 or VIDEO_RGB888 or VIDEO_RGB565 */ 00014 #define USE_VIDEO_CH (0) /* Select 0 or 1 If selecting VIDEO_CMOS_CAMERA, should be 0.) */ 00015 #define VIDEO_PAL (0) /* Select 0(NTSC) or 1(PAL) If selecting VIDEO_CVBS, this parameter is not referenced.) */ 00016 /** LCD setting **/ 00017 #define LCD_TYPE (0) /* Select 0(4.3inch) or 1(7.1inch) */ 00018 /*****************************/ 00019 00020 /** LCD shield config **/ 00021 #if (LCD_TYPE == 0) 00022 #include "LCD_shield_config_4_3inch.h" 00023 #else 00024 #include "LCD_shield_config_7_1inch.h" 00025 #endif 00026 00027 /** Video and Grapics (GRAPHICS_LAYER_0) parameter **/ 00028 /* video input */ 00029 #if USE_VIDEO_CH == (0) 00030 #define VIDEO_INPUT_CH (DisplayBase::VIDEO_INPUT_CHANNEL_0) 00031 #define VIDEO_INT_TYPE (DisplayBase::INT_TYPE_S0_VFIELD) 00032 #else 00033 #define VIDEO_INPUT_CH (DisplayBase::VIDEO_INPUT_CHANNEL_1) 00034 #define VIDEO_INT_TYPE (DisplayBase::INT_TYPE_S1_VFIELD) 00035 #endif 00036 00037 /* NTSC or PAL */ 00038 #if VIDEO_PAL == 0 00039 #define COL_SYS (DisplayBase::COL_SYS_NTSC_358) 00040 #else 00041 #define COL_SYS (DisplayBase::COL_SYS_PAL_443) 00042 #endif 00043 00044 /* Video input and LCD layer 0 output */ 00045 #if VIDEO_INPUT_FORMAT == VIDEO_YCBCR422 00046 #define VIDEO_FORMAT (DisplayBase::VIDEO_FORMAT_YCBCR422) 00047 #define GRAPHICS_FORMAT (DisplayBase::GRAPHICS_FORMAT_YCBCR422) 00048 #define WR_RD_WRSWA (DisplayBase::WR_RD_WRSWA_NON) 00049 #elif VIDEO_INPUT_FORMAT == VIDEO_RGB565 00050 #define VIDEO_FORMAT (DisplayBase::VIDEO_FORMAT_RGB565) 00051 #define GRAPHICS_FORMAT (DisplayBase::GRAPHICS_FORMAT_RGB565) 00052 #define WR_RD_WRSWA (DisplayBase::WR_RD_WRSWA_32_16BIT) 00053 #else 00054 #define VIDEO_FORMAT (DisplayBase::VIDEO_FORMAT_RGB888) 00055 #define GRAPHICS_FORMAT (DisplayBase::GRAPHICS_FORMAT_RGB888) 00056 #define WR_RD_WRSWA (DisplayBase::WR_RD_WRSWA_32BIT) 00057 #endif 00058 00059 /* The size of the video input is adjusted to the LCD size. */ 00060 #define VIDEO_PIXEL_HW LCD_PIXEL_WIDTH 00061 #define VIDEO_PIXEL_VW LCD_PIXEL_HEIGHT 00062 00063 /*! Frame buffer stride: Frame buffer stride should be set to a multiple of 32 or 128 00064 in accordance with the frame buffer burst transfer mode. */ 00065 /* FRAME BUFFER Parameter GRAPHICS_LAYER_0 */ 00066 #define FRAME_BUFFER_NUM (3u) 00067 #if ( VIDEO_INPUT_FORMAT == VIDEO_YCBCR422 || VIDEO_INPUT_FORMAT == VIDEO_RGB565 ) 00068 #define FRAME_BUFFER_BYTE_PER_PIXEL (2u) 00069 #else 00070 #define FRAME_BUFFER_BYTE_PER_PIXEL (4u) 00071 #endif 00072 #define FRAME_BUFFER_STRIDE (((LCD_PIXEL_WIDTH * FRAME_BUFFER_BYTE_PER_PIXEL) + 31u) & ~31u) 00073 00074 /* DRAW BUFFER Parameter GRAPHICS_LAYER_1 */ 00075 #define DRAW_BUFFER_BYTE_PER_PIXEL (2u) 00076 #define DRAW_BUFFER_STRIDE (((LCD_PIXEL_WIDTH * DRAW_BUFFER_BYTE_PER_PIXEL) + 31u) & ~31u) 00077 00078 //thedo__ 00079 #define DRAW_BUFFER_STRIDE_LAYER_3 (((LCD_PIXEL_WIDTH * 4) + 31u) & ~31u) 00080 00081 /* Draw panel parameter */ 00082 #define DRAW_POINT (1u) 00083 00084 /* IMAGE DOWN SAMPLE*/ 00085 #define IMG_DOWN_SAMPLE (2u) 00086 00087 /* Touch number point */ 00088 #define TOUCH_NUM (1u) 00089 00090 #define SDCARD_NAME "SD" 00091 #define SDCARD_PATH "/SD" 00092 00093 #define STORAGE_NAME "fs" 00094 #define HAAR_CASCADE_FACE_PATH "/fs/lbpcascade_frontalface.xml" 00095 00096 #define MODE_BTN_X 16 00097 #define MODE_BTN_Y 235 00098 00099 #define REGIS_FACE_BTN_X 5 00100 #define REGIS_FACE_BTN_Y 130 00101 00102 #define FACE_REG_ID_MENU_X 100 00103 #define FACE_REG_ID_MENU_Y 50 00104 00105 #define FACE_REG_ACT_MENU_X 410 00106 #define FACE_REG_ACT_MENU_Y 80 00107 00108 #define GESTURE_SAMPLING_BTN_X 410 00109 #define GESTURE_SAMPLING_BTN_Y 110 00110 00111 #define M_PI (3.14159) 00112 #define HAAR_FILE_SIZE (51856)//(0xCA90) 00113 00114 00115 enum APP_MODE{ 00116 FACE_DETECTION = 0, 00117 MOTION_DETECTION, 00118 FACE_RECOGNITION, 00119 GUESTURE_RECOGNITION, 00120 MODE_UNKNOWN 00121 }; 00122 00123 enum CLICKED_CODE 00124 { 00125 CLICKED_UNKNOWN = 0, 00126 CLICKED_REGIS_FACE, 00127 CLICKED_CHANGE_ID, 00128 CLICKED_ADD, 00129 CLICKED_IGNORE, 00130 CLICKED_HAND_SAMPLING 00131 }; 00132 00133 #define MAX_COUNTOURS (500) 00134 00135 #if defined(__ICCARM__) 00136 /* 32 bytes aligned */ 00137 #pragma data_alignment=32 00138 static uint8_t user_frame_buffer0[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]; 00139 #pragma data_alignment=32 00140 static uint8_t user_frame_buffer1[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]; 00141 #pragma data_alignment=32 00142 static uint8_t user_frame_buffer2[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]; 00143 #else 00144 /* 32 bytes aligned */ 00145 static uint8_t user_frame_buffer0[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00146 static uint8_t user_frame_buffer1[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00147 static uint8_t user_frame_buffer2[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00148 static uint8_t user_frame_buffer_draw[DRAW_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00149 static uint8_t user_frame_buffer_draw_button[DRAW_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00150 static uint8_t user_buf_draw_action_888[DRAW_BUFFER_STRIDE_LAYER_3 * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00151 static uint8_t my_frame[FRAME_BUFFER_STRIDE * LCD_PIXEL_HEIGHT]__attribute((aligned(32))); 00152 #endif 00153 static uint8_t * FrameBufferTbl[FRAME_BUFFER_NUM] = {user_frame_buffer0, user_frame_buffer1, user_frame_buffer2}; 00154 #if VIDEO_INPUT_METHOD == VIDEO_CVBS 00155 static volatile int32_t vfield_count = 0; 00156 #endif 00157 00158 #endif //DEFINE_H
Generated on Tue Jul 12 2022 15:17:22 by
1.7.2
