Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

Impala::Core::Table::Bayes::Bayes ( String  annoSetName,
String  setName,
String  genreSet,
String  conceptSet,
String  quid,
int  nStart,
int  nEnd 
) [inline]

Definition at line 19 of file Bayes.h.

References AllocateMatrix(), InitializeAnnoTables(), Impala::Core::Table::AnnotationTableSet::MakeFromFile(), Impala::Core::ImageSet::MakeImageSet(), Impala::Core::VideoSet::MakeVideoSet(), mAnnoImgSet, mAnnoSetName, mAnnoTableSize, mAnnoVidSet, mbDumpTable, mConceptNum, mConceptSet, mEnd, mGenreNum, mGenreSet, mHandleTestSet, mHasAnnotation, mImgSet, mIsImageSet, mMatrixFile, mProb_c_g, mQuid, mSetName, mStart, mTabConceptSet, mTabGenreSet, mTableSize, mVerbose, mVidSet, ResetMatrix(), Impala::Core::Table::AnnotationTableSet::Size(), Impala::StringToQuidClass(), tabConcept, tabGenre, and VerifyAndSetAnnoTableSize().

00021     {
00022         mAnnoSetName = annoSetName;
00023         mSetName = setName;
00024         mGenreSet = genreSet;     //genre set: g_{j}
00025         mConceptSet = conceptSet; //concept set: c_{k}
00026         mQuid = quid;
00027 
00028         if (quid == "Image")
00029         {
00030             mIsImageSet = true;
00031             //mImgSet = (Core::ImageSet::ImageSet*) mSet;
00032             //mAnnoImgSet = (Core::ImageSet::ImageSet*) mAnnoSet;
00033         }
00034         else
00035         {
00036             mIsImageSet = false;
00037             //mVidSet = (Core::VideoSet::VideoSet*)mSet;
00038             //mAnnoVidSet = (Core::VideoSet::VideoSet*)mAnnoSet;
00039         }
00040 
00041         mbDumpTable = false;
00042         mStart = nStart;
00043         mEnd = nEnd;
00044 
00045         //mVerbose = false;
00046         mVerbose = true;
00047 
00048         mTableSize = 0;
00049 
00050         mMatrixFile = "Genre/" + mConceptSet + "/" + mGenreSet + "_" + "ConProb.matrix";
00051     
00052         if (mAnnoSetName != "")
00053         {
00054             if (mIsImageSet)
00055             {
00056                 mAnnoImgSet = Core::ImageSet::MakeImageSet(mAnnoSetName);
00057                 mTabGenreSet = Core::Table::AnnotationTableSet::MakeFromFile(mAnnoImgSet, mGenreSet, true,
00058                                                                          StringToQuidClass(mQuid));
00059                 mTabConceptSet = Core::Table::AnnotationTableSet::MakeFromFile(mAnnoImgSet, mConceptSet, true,
00060                                                                            StringToQuidClass(mQuid));
00061             }
00062             else
00063             {
00064                 mAnnoVidSet = Core::VideoSet::MakeVideoSet(mAnnoSetName);
00065                 mTabGenreSet = Core::Table::AnnotationTableSet::MakeFromFile(mAnnoVidSet, mGenreSet, true,
00066                                                                          StringToQuidClass(mQuid));
00067                 mTabConceptSet = Core::Table::AnnotationTableSet::MakeFromFile(mAnnoVidSet, mConceptSet, true,
00068                                                                            StringToQuidClass(mQuid));
00069             }
00070             mHasAnnotation = true;
00071 
00072                 
00073 
00074             // need to check the existence of the data set
00075             if (mTabGenreSet == NULL || mTabConceptSet == NULL)
00076             {
00077                 printf("ERROR: The Concept or Genre Set does NOT exist.\n");
00078                 return;
00079             }
00080 
00081             mGenreNum = mTabGenreSet->Size();
00082             mConceptNum = mTabConceptSet->Size();
00083             //_ASSERT(mGenreNum>0 && mConceptNum>0);
00084             if (mGenreNum<0 || mConceptNum<0)
00085             {
00086                 printf("ERROR: The number of concept or genre is Zero.\n");
00087                 return;
00088             }
00089 
00090             tabConcept = new AnnotationTable* [mConceptNum];
00091             tabGenre = new AnnotationTable* [mGenreNum];
00092 
00093             AllocateMatrix(mProb_c_g, mConceptNum, mGenreNum);
00094             ResetMatrix(mProb_c_g, mConceptNum, mGenreNum);
00095 
00096             InitializeAnnoTables();
00097             VerifyAndSetAnnoTableSize();
00098             //_ASSERT(mAnnoTableSize>0);
00099 
00100             if (mAnnoTableSize<0)
00101             {
00102                 printf("ERROR: The annotation table size is Zero.\n");
00103                 return;
00104             }
00105 
00106             //mAnnoQuidTable = mTabGenreSet->GetTable(0);
00107         }
00108         else
00109         {
00110             mAnnoVidSet = NULL;         
00111             mAnnoImgSet = NULL;   
00112             mGenreNum = 0;
00113             mConceptNum = 0;
00114             tabConcept = NULL;
00115             tabGenre = NULL;
00116 
00117             std::cout << "Note: Annotation Data Set is NOT given." << std::endl;
00118 
00119             mHasAnnotation = false;
00120         }
00121 
00122         if (mSetName != "")
00123         {
00124             if (mIsImageSet)
00125                 mImgSet = Core::ImageSet::MakeImageSet(mSetName);
00126             else
00127                 mVidSet = Core::VideoSet::MakeVideoSet(mSetName);
00128             mHandleTestSet = true;
00129         }
00130         else
00131         {
00132             mVidSet = NULL;
00133             mImgSet = NULL;
00134             mHandleTestSet = false;
00135 
00136             std::cout << "Note: Test Data Set is NOT given." << std::endl;
00137         }
00138 
00139     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:20:46 2011 for ImpalaSrc by  doxygen 1.5.1