Projects:ARRA:SlicerEM Meeting 07202010

From NAMIC Wiki
Jump to: navigation, search
Home < Projects:ARRA:SlicerEM Meeting 07202010

Back to SlicerEM:Developer page

Purpose

  • Address question related to EMSegmentLogic

Attendants

  • Kilian Pohl
  • Sebastien Barre
  • Jean-Christophe Fillion-Robin
  • Julien Finet

Questions

  • vtkSlicerEMSegmentLogic - Old vs New pipeline

What the status regarding the two sets of methods ?

  • ComputeIntensityDistributionsFromSpatialPrior / UpdateIntensityDistributionAuto
int numTargetImages = workingTarget->GetNumberOfVolumes();
//
//   // Sample
//  {
//    vtksys_stl::stringstream CMD ;
//    CMD <<  "::EMSegmenterAutoSampleTcl::EMSegmentGaussCurveCalculationFromID " << vtkKWTkUtilities::GetTclNameFromPointer(app->GetMainInterp(), this->MRMLManager) << " 0.95 1 { " ;
//    for (int i = 0 ; i < numTargetImages; i++) {
//      CMD << workingTarget->GetNthVolumeNodeID(i) << " " ;
//    }
//    CMD << " } " << this->MRMLManager->GetVolumeNode(this->MRMLManager->GetTreeNodeSpatialPriorVolumeID(nodeID))->GetID() << " {" <<  this->MRMLManager->GetTreeNodeName(nodeID) << "} \n";
//    // cout << CMD.str().c_str() << endl;
//    if (atoi(app->Script(CMD.str().c_str()))) { return; }
//  }
//
//  //
//  // propogate data to mrml node
//  //
//
//  vtkMRMLEMSTreeParametersLeafNode* leafNode = this->MRMLManager->GetTreeNode(nodeID)->GetParametersNode()->GetLeafParametersNode();
//  for (int r = 0; r < numTargetImages; ++r)
//    {
//      {
//    double value = atof(app->Script("expr $::EMSegment(GaussCurveCalc,Mean,%d)",r));
//    leafNode->SetAutoLogMean(r, value);
//      }
//      for (int c = 0; c < numTargetImages; ++c)
//      {
//    double value = atof(app->Script("expr $::EMSegment(GaussCurveCalc,Covariance,%d,%d)",r,c));
//    leafNode->SetAutoLogCovariance(r, c, value);
//      }
//    }

See Modules/EMSegment/Tcl/EMSegmentAutoSample.tcl