void mmf::OptSO3MMFvMF::init() { std::cout << "mmf::OptSO3MMFvMF::init()" << std::endl; std::cout << 3*6*K() << std::endl; checkCudaErrors(cudaMalloc((void **)&d_cost, K()*6*sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_mu_, K()*6*3*sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_N_, sizeof(int))); loadRGBvaluesForMFaxes(); };
void OptSO3::init() { //checkCudaErrors(cudaMalloc((void **)&d_q_, w*h * 3 * sizeof(float))); cout<<"allocating CUDA mem for OptSO3 "<<d_q_<<" ("<<w_<<"x"<<h_<<")"<<endl; checkCudaErrors(cudaMalloc((void **)&d_z, w_*h_ * sizeof(uint16_t))); Matrix<uint16_t,Dynamic,Dynamic> z = Matrix<uint16_t,Dynamic,Dynamic>::Zero(h_,w_); checkCudaErrors(cudaMemcpy(d_z, z.data(), w_ * h_ * sizeof(uint16_t), cudaMemcpyHostToDevice)); checkCudaErrors(cudaMalloc((void **)&d_errs_, w_*h_ * sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_cost, 6*sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_J, 3*3*sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_mu_, 6*3*sizeof(float))); checkCudaErrors(cudaMalloc((void **)&d_N_, sizeof(int))); h_z = (uint16_t *)malloc(w_ *h_ * sizeof(uint16_t)); h_errs_ = (float *)malloc(w_ *h_ * sizeof(float)); loadRGBvaluesForMFaxes(); };