Definition at line 511 of file mainIm.cpp. References Impala::atol(), Impala::CmdOptions::GetArg(), Impala::Util::Database::GetInstance(), Impala::CmdOptions::GetInstance(), Impala::CmdOptions::GetNrArg(), ILOG_ERROR, ILOG_VAR, Impala::Core::Array::ReadRaw(), Impala::Core::Array::RGB2Intensity(), Impala::Core::Array::Set(), Impala::Core::Array::WatershedMarkers(), and Impala::Core::Array::WriteRaw(). Referenced by mainIm(). 00512 { 00513 ILOG_VAR(Impala.Application.Im.DoWatershedMarkersVec3UInt8); 00514 CmdOptions& options = CmdOptions::GetInstance(); 00515 if (options.GetNrArg() < 6) 00516 { 00517 ILOG_ERROR("Need more arguments"); 00518 return; 00519 } 00520 Util::Database* db = &Util::Database::GetInstance(); 00521 00522 String dstName = options.GetArg(1); 00523 String srcName = options.GetArg(2); 00524 String maskName = options.GetArg(3); 00525 int conn = atol(options.GetArg(4)); 00526 int doLabel = atol(options.GetArg(5)); 00527 00528 Array2dVec3UInt8* srcData = 0; 00529 ReadRaw(srcData, srcName, db); 00530 Array2dScalarReal64* rData = 0; 00531 RGB2Intensity(rData, srcData); 00532 Array2dScalarInt32* intData = 0; 00533 Set(intData, rData); 00534 00535 ReadRaw(srcData, maskName, db); 00536 RGB2Intensity(rData, srcData); 00537 Array2dScalarInt32* mIntData = 0; 00538 Set(mIntData, rData); 00539 00540 Array2dScalarInt32* res = 0; 00541 WatershedMarkers(res, intData, mIntData, conn, doLabel != 0); 00542 WriteRaw(res, dstName, db, 1); 00543 delete srcData; 00544 delete rData; 00545 delete res; 00546 }
Here is the call graph for this function: ![]()
|