Click here to Skip to main content
15,886,199 members
Articles / Programming Languages / C++

Realtime Webcam Sudoku Solver

Rate me:
Please Sign up or sign in to vote.
4.97/5 (311 votes)
8 Aug 2011LGPL319 min read 452.2K   25.7K   416  
Sudoku solver via a webcam: A nice computer vision application
  • WebCamSudokuSolver_demo.zip
    • SudSolver.exe
  • WebCamSudokuSolver_src.zip
    • AviCapTest.cpp
    • AviCapTest.h
    • AviCapTest.rc
    • AviCapTest.vcproj
    • AviCapTestDoc.cpp
    • AviCapTestDoc.h
    • AviCapTestView.cpp
    • AviCapTestView.h
    • CAvicap.cpp
    • CAvicap.h
    • EnhCtl.cpp
    • EnhCtl.h
    • Info.cpp
    • Info.h
    • MainFrm.cpp
    • MainFrm.h
    • OCRDigit.cpp
    • OCRDigit.h
    • ProgDlg.cpp
    • ProgDlg.h
    • res
      • 1
        • Train0a.bmp
        • Train0b.bmp
        • Train0c.bmp
        • Train1_0_6.bmp
        • Train1_0_6a.bmp
        • Train1_1_0.bmp
        • Train1_1_0a.bmp
        • Train1_1_0b.bmp
        • Train1_1_0d.bmp
        • Train1_1_1.bmp
        • Train1_1_1b.bmp
        • Train1_1_1c.bmp
        • Train1_2_3.bmp
        • Train1_3_2.bmp
        • Train1_4_4.bmp
        • Train1_5_5.bmp
        • Train1_6_5.bmp
        • Train1a.bmp
        • Train1b.bmp
        • Train1c.bmp
      • 2
        • Train2_1_3.bmp
        • Train2_1_3a.bmp
        • Train2_2_2.bmp
        • Train2_2_5.bmp
        • Train2_2_5a.bmp
        • Train2_5_6.bmp
        • Train2_5_6a.bmp
        • Train2_5_6b.bmp
        • Train2_5_6c.bmp
        • Train2_5_7.bmp
        • Train2_5_7a.bmp
        • Train2_5_7b.bmp
        • Train2_5_7c.bmp
        • Train2_6_3.bmp
        • Train2_6_3a.bmp
        • Train2_6_6.bmp
        • Train2_7_2.bmp
        • Train2_7_2a.bmp
        • Train2_7_2b.bmp
        • Train2_8_2.bmp
        • Train2_8_2a.bmp
        • Train2a.bmp
        • Train2b.bmp
        • Train2c.bmp
      • 3
        • Train3_0_8.bmp
        • Train3_0_8c.bmp
        • Train3_1_2.bmp
        • Train3_1_2c.bmp
        • Train3_3_3.bmp
        • Train3_3_5.bmp
        • Train3_3_5b.bmp
        • Train3_3_5c.bmp
        • Train3_4_0.bmp
        • Train3_4_0c.bmp
        • Train3_6_2.bmp
        • Train3_6_8.bmp
        • Train3_6_8a.bmp
        • Train3_7_1.bmp
        • Train3_7_1a.bmp
        • Train3_8_2.bmp
        • Train3_8_7.bmp
        • Train3a.bmp
        • Train3b.bmp
        • Train3c.bmp
      • 4
        • Train4_0_2.bmp
        • Train4_0_2a.bmp
        • Train4_0_7.bmp
        • Train4_1_5.bmp
        • Train4_1_6.bmp
        • Train4_2_8.bmp
        • Train4_2_8a.bmp
        • Train4_4_4.bmp
        • Train4_4_5.bmp
        • Train4_6_0.bmp
        • Train4_7_6.bmp
        • Train4a.bmp
        • Train4b.bmp
        • Train4c.bmp
      • 5
        • Train5_0_1.bmp
        • Train5_1_4.bmp
        • Train5_1_4a.bmp
        • Train5_1_8.bmp
        • Train5_2_8.bmp
        • Train5_4_1.bmp
        • Train5_4_1a.bmp
        • Train5_5_8.bmp
        • Train5_5_8a.bmp
        • Train5_7_6.bmp
        • Train5_8_5.bmp
        • Train5_8_5a.bmp
        • Train5a.bmp
        • Train5b.bmp
        • Train5c.bmp
      • 6
        • Train6_0_4.bmp
        • Train6_0_5.bmp
        • Train6_1_3.bmp
        • Train6_1_3a.bmp
        • Train6_1_5.bmp
        • Train6_2_0.bmp
        • Train6_2_3.bmp
        • Train6_2_3a.bmp
        • Train6_2_3b.bmp
        • Train6_2_3c.bmp
        • Train6_2_6.bmp
        • Train6_3_6.bmp
        • Train6_3_6d.bmp
        • Train6_4_2.bmp
        • Train6_4_2a.bmp
        • Train6_4_2b.bmp
        • Train6_4_2c.bmp
        • Train6_5_2.bmp
        • Train6_5_3.bmp
        • Train6_5_4.bmp
        • Train6_5_4a.bmp
        • Train6_5_4b.bmp
        • Train6_5_4c.bmp
        • Train6_6_7.bmp
        • Train6_6_7b.bmp
        • Train6_6_7c.bmp
        • Train6_7_1.bmp
        • Train6_7_8.bmp
        • Train6_7_8a.bmp
        • Train6_7_8b.bmp
        • Train6_8_1.bmp
        • Train6_8_5.bmp
        • Train6a.bmp
        • Train6b.bmp
        • Train6d.bmp
      • 7
        • Train7_0_3.bmp
        • Train7_0_3a.bmp
        • Train7_0_7.bmp
        • Train7_1_2.bmp
        • Train7_2_0.bmp
        • Train7_2_0a.bmp
        • Train7_3_1.bmp
        • Train7_3_5.bmp
        • Train7_3_6.bmp
        • Train7_3_6a.bmp
        • Train7_4_6.bmp
        • Train7_4_8.bmp
        • Train7_5_2.bmp
        • Train7_5_2a.bmp
        • Train7_7_0.bmp
        • Train7_7_5.bmp
        • Train7_7_5a.bmp
        • Train7_8_0.bmp
        • Train7_8_7.bmp
        • Train7_8_7a.bmp
        • Train7a.bmp
        • Train7b.bmp
        • Train7c.bmp
        • Train7d.bmp
        • Train7e.bmp
      • 8
        • Train8_0_1.bmp
        • Train8_0_1a.bmp
        • Train8_0_2.bmp
        • Train8_0_2c.bmp
        • Train8_1_8.bmp
        • Train8_2_0.bmp
        • Train8_2_4.bmp
        • Train8_3_0.bmp
        • Train8_3_0a.bmp
        • Train8_3_3.bmp
        • Train8_3_4.bmp
        • Train8_3_4c.bmp
        • Train8_4_7.bmp
        • Train8_4_7a.bmp
        • Train8_6_7.bmp
        • Train8_7_2.bmp
        • Train8_7_4.bmp
        • Train8_7_4a.bmp
        • Train8_7_6.bmp
        • Train8_7_6c.bmp
        • Train8_72.bmp
        • Train8_8_5.bmp
        • Train8a.bmp
        • Train8b.bmp
        • Train8c.bmp
      • 9
        • Train9_0_1c.bmp
        • Train9_0_2.bmp
        • Train9_1_7.bmp
        • Train9_1_7a.bmp
        • Train9_2_7.bmp
        • Train9_2_7b.bmp
        • Train9_2_7c.bmp
        • Train9_3_0.bmp
        • Train9_3_1.bmp
        • Train9_3_1a.bmp
        • Train9_3_1b.bmp
        • Train9_5_7.bmp
        • Train9_6_0.bmp
        • Train9_6_0a.bmp
        • Train9_6_8.bmp
        • Train9_6_8a.bmp
        • Train9_6_8b.bmp
        • Train9_6_8c.bmp
        • Train9_7_2.bmp
        • Train9_7_2a.bmp
        • Train9_7_2b.bmp
        • Train9_7_2c.bmp
        • Train9_7_3.bmp
        • Train9_8_6.bmp
        • Train9_8_6a.bmp
        • Train9_8_6b.bmp
        • Train9a.bmp
        • Train9b.bmp
        • Train9c.bmp
      • AviCapTest.ico
      • AviCapTest.rc2
      • AviCapTestDoc.ico
    • resource.h
    • StdAfx.cpp
    • StdAfx.h
    • SudBitmap.cpp
    • SudBitmap.h
    • SudResultVoter.cpp
    • SudResultVoter.h
    • SudSolver.cpp
    • SudSolver.h
    • WebcamSudSolver.sln
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// Russian resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
#ifdef _WIN32
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
#pragma code_page(1251)
#endif //_WIN32

#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE 
BEGIN
    "resource.h\0"
END

2 TEXTINCLUDE 
BEGIN
    "#include ""afxres.h""\r\n"
    "\0"
END

3 TEXTINCLUDE 
BEGIN
    "#define _AFX_NO_SPLITTER_RESOURCES\r\n"
    "#define _AFX_NO_OLE_RESOURCES\r\n"
    "#define _AFX_NO_TRACKER_RESOURCES\r\n"
    "#define _AFX_NO_PROPERTY_RESOURCES\r\n"
    "\r\n"
    "#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
    "#ifdef _WIN32\r\n"
    "LANGUAGE 9, 1\r\n"
    "#pragma code_page(1252)\r\n"
    "#endif\r\n"
    "#include ""res\\AviCapTest.rc2""  // non-Microsoft Visual C++ edited resources\r\n"
    "#include ""afxres.rc""         // Standard components\r\n"
    "#endif\0"
END

#endif    // APSTUDIO_INVOKED

#endif    // Russian resources
/////////////////////////////////////////////////////////////////////////////


/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32

/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//

IDR_MAINFRAME ACCELERATORS 
BEGIN
    "C",            ID_EDIT_COPY,           VIRTKEY, CONTROL, NOINVERT
    "N",            ID_FILE_NEW,            VIRTKEY, CONTROL, NOINVERT
    "O",            ID_FILE_OPEN,           VIRTKEY, CONTROL, NOINVERT
    "S",            ID_FILE_SAVE,           VIRTKEY, CONTROL, NOINVERT
    "V",            ID_EDIT_PASTE,          VIRTKEY, CONTROL, NOINVERT
    VK_ADD,         ID_VIEW_PLUS,           VIRTKEY, NOINVERT
    VK_BACK,        ID_EDIT_UNDO,           VIRTKEY, ALT, NOINVERT
    VK_DELETE,      ID_EDIT_CUT,            VIRTKEY, SHIFT, NOINVERT
    VK_F6,          ID_NEXT_PANE,           VIRTKEY, NOINVERT
    VK_F6,          ID_PREV_PANE,           VIRTKEY, SHIFT, NOINVERT
    VK_INSERT,      ID_EDIT_COPY,           VIRTKEY, CONTROL, NOINVERT
    VK_INSERT,      ID_EDIT_PASTE,          VIRTKEY, SHIFT, NOINVERT
    VK_SUBTRACT,    ID_VIEW_MINUS,          VIRTKEY, NOINVERT
    VK_SPACE,       ID_FILE_PREVIEW,        VIRTKEY, NOINVERT
    "X",            ID_EDIT_CUT,            VIRTKEY, CONTROL, NOINVERT
    "Z",            ID_EDIT_UNDO,           VIRTKEY, CONTROL, NOINVERT
END


/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

CG_IDD_PROGRESS DIALOG  0, 0, 186, 66
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION
FONT 8, "MS Sans Serif"
BEGIN
    CONTROL         "Progress1",CG_IDC_PROGDLG_PROGRESS,"msctls_progress32",WS_BORDER,15,34,154,13
    LTEXT           " 0 %",CG_IDC_PROGDLG_PERCENT,85,23,18,8
    LTEXT           "",CG_IDC_PROGDLG_STATUS,13,7,158,11
END

IDD_DIALOG1 DIALOG  0, 0, 242, 167
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Capture device info"
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,95,147,50,14
    EDITTEXT        IDC_EDIT1,5,6,230,134,ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | WS_VSCROLL | WS_HSCROLL
END

IDD_ABOUTBOX DIALOGEX 0, 0, 217, 68
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About Webcam Sudoku Solver"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
    ICON            IDR_MAINFRAME,IDC_STATIC,11,17,20,20
    LTEXT           "Webcam Sudoku Solver Version 1.0",IDC_STATIC,40,10,119,8,SS_NOPREFIX
    LTEXT           "Copyright (C)  Bojan Banko 2011",IDC_STATIC,40,25,119,8
    DEFPUSHBUTTON   "OK",IDOK,178,7,32,14,WS_GROUP
    LTEXT           "AviCapTest from V.Gorbatenko",IDC_STATIC,40,39,119,8
END

IDD_DIALOG2 DIALOG  0, 0, 164, 93
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Enhanced control"
FONT 8, "MS Sans Serif"
BEGIN
    COMBOBOX        IDC_FORMATLIST,7,17,79,65,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    COMBOBOX        IDC_RESOLUTION,7,50,79,58,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    DEFPUSHBUTTON   "OK",IDOK,107,21,50,14
    PUSHBUTTON      "Cancel",IDCANCEL,107,44,50,14
    LTEXT           "&Formats:",IDC_STATIC,7,7,26,8
    LTEXT           "Resolution:",IDC_STATIC,7,39,36,8
END


/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//

#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO 
BEGIN
    CG_IDD_PROGRESS, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 179
        TOPMARGIN, 7
        BOTTOMMARGIN, 59
    END

    IDD_DIALOG1, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 235
        TOPMARGIN, 7
        BOTTOMMARGIN, 160
    END

    IDD_ABOUTBOX, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 210
        TOPMARGIN, 7
        BOTTOMMARGIN, 61
    END

    IDD_DIALOG2, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 157
        TOPMARGIN, 7
        BOTTOMMARGIN, 86
    END
END
#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME           ICON                    "res\\AviCapTest.ico"
IDR_AVICAPTYPE          ICON                    "res\\AviCapTestDoc.ico"

/////////////////////////////////////////////////////////////////////////////
//
// Menu
//

IDR_MAINFRAME MENU 
BEGIN
    POPUP "&Camera"
    BEGIN
        MENUITEM "Pause\tSpace",                ID_FILE_PREVIEW
        MENUITEM "Format...",                   ID_FILE_FORMAT
        MENUITEM "Source...",                   ID_FILE_SOURCE
        MENUITEM "Display...",                  ID_FILE_DISPLAY
        MENUITEM "Enhanced control..",          ID_FILEENHCTL
        MENUITEM "Driver info...",              ID_FILE_DRIVER
        MENUITEM SEPARATOR
        MENUITEM "Recent File",                 ID_FILE_MRU_FILE1, GRAYED
        MENUITEM SEPARATOR
        MENUITEM "E&xit",                       ID_APP_EXIT
    END
    POPUP "&View"
    BEGIN
        MENUITEM "Disable &processing",         ID_VIEW_PROCESS, CHECKED
        MENUITEM "Zoom &In\t+",                 ID_VIEW_PLUS
        MENUITEM "Zoom &Out\t-",                ID_VIEW_MINUS
        MENUITEM "&Autosize",                   ID_VIEW_AUTOSIZE
        MENUITEM "&Status Bar",                 ID_VIEW_STATUS_BAR
        MENUITEM "Small font",                  ID_VIEW_SMALLFONT
        MENUITEM SEPARATOR
        MENUITEM "Black pixels",                ID_VIEW_BLACK
        MENUITEM "White pixels",                ID_VIEW_WHITE
        MENUITEM "Rotation detection",          ID_VIEW_ROTATIONDETECTION
        MENUITEM "White rectangle detection",   ID_VIEW_WHITERECT
        MENUITEM "White rectangle detected",    ID_VIEW_WHITEAREA
        MENUITEM "Lines detection",             ID_VIEW_LINESDETECT
        MENUITEM "Grid lines",                  ID_VIEW_GRID
        MENUITEM "OCR",                         ID_VIEW_OCRRESULT
        MENUITEM "Recent Solution",             ID_VIEW_SOLUTION
        MENUITEM "Final Solution",              ID_VIEW_FINALSOLUTION
    END
    POPUP "&Help"
    BEGIN
        MENUITEM "&About Webcam Sudoku Solver...", ID_APP_ABOUT
    END
END


/////////////////////////////////////////////////////////////////////////////
//
// Version
//

VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,0,1
 PRODUCTVERSION 1,0,0,1
 FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904b0"
        BEGIN
            VALUE "FileDescription", "Webcam Sudoku Solver MFC Application"
            VALUE "FileVersion", "1, 0, 0, 1"
            VALUE "InternalName", "Webcam Sudoku Solver"
            VALUE "LegalCopyright", "Copyright (C) Bojan Banko 2010"
            VALUE "OriginalFilename", "SudSolver.EXE"
            VALUE "ProductName", "Webcam Sudoku Solver"
            VALUE "ProductVersion", "1, 0, 0, 1"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1200
    END
END


/////////////////////////////////////////////////////////////////////////////
//
// String Table
//

STRINGTABLE 
BEGIN
    IDR_MAINFRAME           "Webcam Sudoku Solver\n\nSudSolver\n\n\nSudSolver.Document\nSudSolver Document"
END

STRINGTABLE 
BEGIN
    AFX_IDS_APP_TITLE       "Webcam Sudoku Solver"
    AFX_IDS_IDLEMESSAGE     "Ready"
END

STRINGTABLE 
BEGIN
    ID_INDICATOR_EXT        "EXT"
    ID_INDICATOR_CAPS       "CAP"
    ID_INDICATOR_NUM        "NUM"
    ID_INDICATOR_SCRL       "SCRL"
    ID_INDICATOR_OVR        "OVR"
    ID_INDICATOR_REC        "REC"
END

STRINGTABLE 
BEGIN
    ID_FILE_NEW             "Create a new document\nNew"
    ID_FILE_OPEN            "Open an existing document\nOpen"
    ID_FILE_CLOSE           "Close the active document\nClose"
    ID_FILE_SAVE            "Save the active document\nSave"
    ID_FILE_SAVE_AS         "Save the active document with a new name\nSave As"
END

STRINGTABLE 
BEGIN
    ID_APP_ABOUT            "Display program information, version number and copyright\nAbout"
    ID_APP_EXIT             "Quit the application\nExit"
END

STRINGTABLE 
BEGIN
    ID_FILE_MRU_FILE1       "Open this document"
    ID_FILE_MRU_FILE2       "Open this document"
    ID_FILE_MRU_FILE3       "Open this document"
    ID_FILE_MRU_FILE4       "Open this document"
    ID_FILE_MRU_FILE5       "Open this document"
    ID_FILE_MRU_FILE6       "Open this document"
    ID_FILE_MRU_FILE7       "Open this document"
    ID_FILE_MRU_FILE8       "Open this document"
    ID_FILE_MRU_FILE9       "Open this document"
    ID_FILE_MRU_FILE10      "Open this document"
    ID_FILE_MRU_FILE11      "Open this document"
    ID_FILE_MRU_FILE12      "Open this document"
    ID_FILE_MRU_FILE13      "Open this document"
    ID_FILE_MRU_FILE14      "Open this document"
    ID_FILE_MRU_FILE15      "Open this document"
    ID_FILE_MRU_FILE16      "Open this document"
END

STRINGTABLE 
BEGIN
    ID_NEXT_PANE            "Switch to the next window pane\nNext Pane"
    ID_PREV_PANE            "Switch back to the previous window pane\nPrevious Pane"
END

STRINGTABLE 
BEGIN
    ID_WINDOW_SPLIT         "Split the active window into panes\nSplit"
END

STRINGTABLE 
BEGIN
    ID_EDIT_CLEAR           "Erase the selection\nErase"
    ID_EDIT_CLEAR_ALL       "Erase everything\nErase All"
    ID_EDIT_COPY            "Copy the selection and put it on the Clipboard\nCopy"
    ID_EDIT_CUT             "Cut the selection and put it on the Clipboard\nCut"
    ID_EDIT_FIND            "Find the specified text\nFind"
    ID_EDIT_PASTE           "Insert Clipboard contents\nPaste"
    ID_EDIT_REPEAT          "Repeat the last action\nRepeat"
    ID_EDIT_REPLACE         "Replace specific text with different text\nReplace"
    ID_EDIT_SELECT_ALL      "Select the entire document\nSelect All"
    ID_EDIT_UNDO            "Undo the last action\nUndo"
    ID_EDIT_REDO            "Redo the previously undone action\nRedo"
END

STRINGTABLE 
BEGIN
    ID_VIEW_STATUS_BAR      "Show or hide the status bar\nToggle StatusBar"
END

STRINGTABLE 
BEGIN
    AFX_IDS_SCSIZE          "Change the window size"
    AFX_IDS_SCMOVE          "Change the window position"
    AFX_IDS_SCMINIMIZE      "Reduce the window to an icon"
    AFX_IDS_SCMAXIMIZE      "Enlarge the window to full size"
    AFX_IDS_SCNEXTWINDOW    "Switch to the next document window"
    AFX_IDS_SCPREVWINDOW    "Switch to the previous document window"
    AFX_IDS_SCCLOSE         "Close the active window and prompts to save the documents"
END

STRINGTABLE 
BEGIN
    AFX_IDS_SCRESTORE       "Restore the window to normal size"
    AFX_IDS_SCTASKLIST      "Activate Task List"
END

STRINGTABLE 
BEGIN
    ID_VIEW_AUTOSIZE        "Autosize capute window"
    ID_VIEW_BLACK           "Show black pixels after the image is converted to monochrome"
END

STRINGTABLE 
BEGIN
    CG_IDS_PROGRESS_CAPTION "Wait, please..."
    ID_INDICATOR_MS         "Frame processing time: XXXXXX ms (avg:XXXXX ms)"
END

STRINGTABLE 
BEGIN
    ID_VIEW_WHITE           "Show white pixels after the image is converted to monochrome"
    ID_VIEW_ROTATIONDETECTION 
                            "Show how is detected the angle of rotation. We are looking for the strongest line somewhere at the center."
    ID_VIEW_WHITEAREA       "Shows the white area enclosing sudoku."
    ID_VIEW_GRID            "Display the sudoku grid lines 10x10."
    ID_VIEW_OCRRESULT       "Show the numbers recognized by OCR"
    ID_VIEW_WHITERECT       "Shows the candidates of the white strips enclosing sudoku."
    ID_VIEW_OCRAVERAGED     "Averaged OCR is better because rejects the bad OCR results"
    ID_VIEW_SOLUTION        "Shows the most recent solution"
    ID_VIEW_FINALSOLUTION   "Shows the most probable solution based on several recent solutions"
    ID_VIEW_SMALLFONT       "Small font is better if you want to see the original background image."
END

#endif    // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////



#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE 9, 1
#pragma code_page(1252)
#endif
#include "res\AviCapTest.rc2"  // non-Microsoft Visual C++ edited resources
#include "afxres.rc"         // Standard components
#endif
/////////////////////////////////////////////////////////////////////////////
#endif    // not APSTUDIO_INVOKED

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The GNU Lesser General Public License (LGPLv3)


Written By
Skilja
Croatia Croatia
Programmer since 1994.

Comments and Discussions