void GpuRule::generateDeclCode(Transform& trans, CodeGenerator& o, RuleFlavor rf) { if(rf != RuleFlavor::SEQUENTIAL || isDisabled() || _done.find(_rule->id()) != _done.end()) return; _done.insert(_rule->id()); generateKernel(trans, o, false); if(_rule->canUseLocalMemory()) { generateKernel(trans, o, true); //o.createTunable(true, "system.flag.localmem", "rule_" + _rule->id() + "_localmem", 0, 0, 2); //o.createTunable(true, "system.size.blocksize", "rule_" + _rule->id() + "_blocksize", 4, 0, 5); } //else { //o.define("rule_" + _rule->id() + "_localmem", "0"); //} }
EdgeDetect::EdgeDetect() { int rep = 1; int radius = 1; k_kernel = new Kernel(rep,radius); generateKernel(); }
void MainWindow::convolution() { statusBar()->showMessage("calculate convolution"); // ask user which kernel should be used if(generateKernel() != 0) { statusBar()->showMessage("error while convoluting"); return; } // covolution between the image and the given matrix if(pgmImage->convolution(kernel, kSize, rotateKernel) != 0) { statusBar()->showMessage("error while calculating convolution"); return; } // free memory for(int i = 0; i < kSize; i++){ free(kernel[i]); } free(kernel); // show chart QPixmap pixmap(pgmImage->getTmpFilePath()); ui->imageLabel->setPixmap(pixmap); statusBar()->showMessage("convolution calculated successfully",3000); }
TBlur::TBlur() { int radius =1; int rep = 1; t_kernel = new Kernel(rep,radius); generateKernel(); }
pcl::BRISK2DEstimation<PointInT, PointOutT, KeypointT, IntensityT>::BRISK2DEstimation () : rotation_invariance_enabled_ (true) , scale_invariance_enabled_ (true) , pattern_scale_ (1.0f) , input_cloud_ (), keypoints_ (), scale_range_ (), pattern_points_ (), points_ () , n_rot_ (1024), scale_list_ (NULL), size_list_ (NULL) , scales_ (64) , scalerange_ (30) , basic_size_ (12.0) , strings_ (0), d_max_ (0.0f), d_min_ (0.0f), short_pairs_ (), long_pairs_ () , no_short_pairs_ (0), no_long_pairs_ (0) , intensity_ () , name_ ("BRISK2Destimation") { // Since we do not assume pattern_scale_ should be changed by the user, we // can initialize the kernel in the constructor std::vector<float> r_list; std::vector<int> n_list; // this is the standard pattern found to be suitable also r_list.resize (5); n_list.resize (5); const float f = 0.85f * pattern_scale_; r_list[0] = f * 0.0f; r_list[1] = f * 2.9f; r_list[2] = f * 4.9f; r_list[3] = f * 7.4f; r_list[4] = f * 10.8f; n_list[0] = 1; n_list[1] = 10; n_list[2] = 14; n_list[3] = 15; n_list[4] = 20; generateKernel (r_list, n_list, 5.85f * pattern_scale_, 8.2f * pattern_scale_); }