Форум программистов, компьютерный форум, киберфорум
C/C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
171 / 27 / 16
Регистрация: 02.02.2014
Сообщений: 345
1

Баг Point Cloud Library

27.11.2022, 15:14. Показов 533. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем! Пытаюсь с помощью Point Cloud Library выровнять два облака точек в UE4. Но если запустить тестовый алгоритм:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
pcl::PointCloud<pcl::PointXYZ>::Ptr* cloud_in = nullptr;
    pcl::PointCloud<pcl::PointXYZ>::Ptr* cloud_out = nullptr;
    pcl::IterativeClosestPoint<pcl::PointXYZ, pcl::PointXYZ> icp;
    pcl::PointCloud<pcl::PointXYZ> Final;
    int  testICP()
    {
        if (cloud_in == nullptr)
            cloud_in = new pcl::PointCloud<pcl::PointXYZ>::Ptr(new pcl::PointCloud<pcl::PointXYZ>(5, 1));
 
        if (cloud_out == nullptr)
            cloud_out = new pcl::PointCloud<pcl::PointXYZ>::Ptr(new pcl::PointCloud<pcl::PointXYZ>());
 
        // Fill in the CloudIn data
        for (auto& point : **cloud_in)
        {
            point.x = 1024 * rand() / (RAND_MAX + 1.0f);
            point.y = 1024 * rand() / (RAND_MAX + 1.0f);
            point.z = 1024 * rand() / (RAND_MAX + 1.0f);
        }
 
 
        **cloud_out = **cloud_in;
 
        for (auto& point : **cloud_out)
            point.x += 0.7f;
 
 
 
        icp.setInputSource(*cloud_in);
        icp.setInputTarget(*cloud_out);
 
        icp.align(Final); // <----------------------------------------------ТУТ
 
 
        return (0);
    }
То на строке icp.align(Final) он падает в файле memory на строке 1132 в методе std::_Ref_count_resource<_Resource, _Dx> с формулировкой UE4Editor-Win64-DebugGame.exe вызвал срабатывание точки останова. Вот фрагмент файла memory:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
    virtual void* _Get_deleter(const type_info&) const noexcept {
        return nullptr;
    }
};
 
template <class _Ty>
class _Ref_count : public _Ref_count_base { // handle reference counting for pointer without deleter
public:
    explicit _Ref_count(_Ty* _Px) : _Ref_count_base(), _Ptr(_Px) {}
 
private:
    void _Destroy() noexcept override { // destroy managed resource
        delete _Ptr; // <--------------------------------------------------------------ТУТ
    }
 
    void _Delete_this() noexcept override { // destroy self
        delete this;
    }
 
    _Ty* _Ptr;
};
 
template <class _Resource, class _Dx>
class _Ref_count_resource : public _Ref_count_base { // handle reference counting for object with deleter
public:
    _Ref_count_resource(_Resource _Px, _Dx _Dt)
        : _Ref_count_base(), _Mypair(_One_then_variadic_args_t{}, _STD move(_Dt), _Px) {}
 
#ifdef __EDG__ // TRANSITION, VSO-1292293
    ~_Ref_count_resource() noexcept override {} // TRANSITION, should be non-virtual
#else // ^^^ workaround / no workaround vvv
    ~_Ref_count_resource() noexcept override = default; // TRANSITION, should be non-virtual
#endif // ^^^ no workaround ^^^
Вне UE4 всё работает. Что это может быть? Конфликт управления памятью UE4 и PCL? Как мне устранить этот баг?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2022, 15:14
Ответы с готовыми решениями:

Point cloud - В режиме реального времени выводить точки на экран в удобной форме
Доброго времени суток. Не подскажите пошаговое решение проблемы визуализации? Суть: есть...

Правильное подключение и использование Point Cloud Library
Добрый вечер, пытаюсь начать использовать библиотеку Point Cloud (PCL) но при первой компиляции...

C++/CLI враппер для C++ класса, который использует PCL (Point Cloud Library)
Доброго времени суток. Пишу сюда так как не являюсь C++ разработчиком и столкнулся с проблемой...

Realtek ALC887 @ Intel Panther Point PCH и HyperX Cloud Core
Добрый день... Помогите разобраться со звуком. В моей материнки есть звуковая карта - Realtek...

0
27.11.2022, 15:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2022, 15:14
Помогаю со студенческими работами здесь

Передача стандартного Point: "невозможно преобразовать Point в Point"
привет есть клиент c# (консоль) и WCF сервис. Как передать стандартный поинт? пишет невозможно...

Сформировать обратные коды элементов массива Point, начиная с Point(1)
Сформировать обратные коды элементов массива Point, начиная с Point(1). Начальный адрес массива...

MPI - Point to point communication - Задача распараллеливания обращения матрицы
from mpi4py import MPI import numpy as np import time import random M=int(raw_input(&quot;Please...

Алгоритм поиска 2-х ближайших точек из массива элементов Point [] points к заданной точке Point p.
Кто может, напишите хотя бы один алгоритм, пожалуйста. Алгоритм поиска 2-х ближайших точек из...

Алгоритм поиска 2-х ближайших точек из массива элементов Point [] points к заданной точке Point p.
Помогите хоть один написать. Алгоритм поиска 2-х ближайших точек из массива элементов Point ...

Баг в программе. Без цикла работает нормально. С циклом выдает баг
Здравствуйте. Пишу программу. И как не пытался ее переписать, как дохожу до момента включения в код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru