草庐IT

segments

全部标签

【Linux】调试常见的应用程序奔溃“Segmentation fault (core dumped)”

文章目录前言一、确保产生core文件二、利用core文件,调试确认terminated位置前言Linux程序开发者,日常遇到程序奔溃时,应该如何调试,如何寻找原因和解决呢?本文就介绍了遇到Segmentationfault(coredumped)问题时最常规的定位方法。一、确保产生core文件当你在命令行执行一个程序时,遇到Segmentationfault(coredumped)后,第一时间查看当前目录下是否产生了core-xxxxx文件。如果没有产生core文件,以ubuntu20.0为例:查询OS当前最corefilesize的配置:root@x-System-Product-Name:

图像分割之SAM(Segment Anything Model)

论文:SegmentAnythingGithub:https://github.com/facebookresearch/segment-anything论文从zero-shot主干网络的基础出发,提出了SAM(SegmentAnythingModel)模型。该模型有别于传统的分割模型。传统分割模型只能输入原图输出固定的分割结果,SAM在设计上可以同时输入原图和特定提示(点、框、阴影、文本),然后根据不同的提示输出不同的分割结果图,并且SAM支持不同提示的交互式分割。SAM可以适用于多种分割场景,包括交互式分割、边界检测、超分、物体生成、前景分割、语义分割、实例分割、全景分割等众多场景。另外为

2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

CutandLearnforUnsupervisedObjectDetectionandInstanceSegmentation无监督目标检测和实例分割的剪切与学习Facebook目标检测和分割依赖海量数据的标注,模型训练耗时最大的是数据采集和标注过程,无监督学习在目标检测和分割中的应用较少。这篇文章提出提出了Cut-and-LEaRn(CutLER),一种用于训练无监督对象检测和分割模型的简单方法。利用自监督模型的特性在没有监督的情况下“发现”目标,并将其放大以训练没有任何标签的最先进的检测模型。CutLER首先使用作者提出的MaskCut方法为图像中的多个对象生成粗蒙版mask,然后使用设

【论文复现】——FEC: Fast Euclidean Clustering for Point Cloud Segmentation

目录一、算法原理1、论文概述2、实现流程3、参考文献二、代码实现三、结果展示四、实验数据一、算法原理1、论文概述  从点云数据进行分割在许多应用中都是必不可少的,例如遥感、移动机器人或自动驾驶汽车。然而,三维距离传感器捕获的点云通常是稀疏和非结构化的,这对有效的分割提出了挑战。缺少计算量小的点云实例分割的快速解决方案。为此,提出了一种新的快速欧氏聚类(FEC)算法,该算法在现有聚类算法的基础上应用一种点聚类算法,避免了不断遍历每一个点。2、实现流程  首先将点云中所有点Pi\mathbf{P}_i

解决ffmpeg读取视频流时,报错“Segmentation fault (core dumped)“,avformat_open_input 返回 -1330794744

错误现象:ffmpeg读取视频流时,直接报错返回“Segmentationfault(coredumped)”;排查中发现是avformat_open_input函数错误,返回的是-1330794744,而不是代表正确的0。这个问题困扰了我很久,网上也搜了很久,但解决办法中都没提及ffmpeg的版本,在试错很多次后,发现了问题的所在,是代码与ffmpeg的版本有些不兼容的问题,那就直接切入主题。这次我试了ffmpeg的两个大版本:(一定对照自己的版本来看)ffmpeg-n4.4-latest-linux64-gpl-shared-4.4.tar.xz(这是github上别人编译好的)(在ubu

解决ffmpeg读取视频流时,报错“Segmentation fault (core dumped)“,avformat_open_input 返回 -1330794744

错误现象:ffmpeg读取视频流时,直接报错返回“Segmentationfault(coredumped)”;排查中发现是avformat_open_input函数错误,返回的是-1330794744,而不是代表正确的0。这个问题困扰了我很久,网上也搜了很久,但解决办法中都没提及ffmpeg的版本,在试错很多次后,发现了问题的所在,是代码与ffmpeg的版本有些不兼容的问题,那就直接切入主题。这次我试了ffmpeg的两个大版本:(一定对照自己的版本来看)ffmpeg-n4.4-latest-linux64-gpl-shared-4.4.tar.xz(这是github上别人编译好的)(在ubu

c++ - 调试讨厌的 SIGILL 崩溃 : Text Segment corruption

我们的是基于PowerPC的嵌入式系统,运行Linux。我们遇到了一个随机的SIGILL崩溃,这种崩溃在各种应用程序中都会出现。崩溃的根本原因是要执行的指令归零。这表明驻留在内存中的文本段已损坏。由于文本段以只读方式加载,因此应用程序无法破坏它。所以我怀疑是某些常见的子系统(DMA?)导致了这种损坏。由于问题需要几天时间才能重现(由于SIGILL而导致崩溃),因此调查变得越来越困难。因此,首先我想知道任何应用程序的文本段是否以及何时已损坏。我查看了堆栈跟踪和所有指针、寄存器都是正确的。你们有什么建议吗?一些信息:Linux3.12.19-rt30#1SMPFriMar1101:31:2

c++ - 调试讨厌的 SIGILL 崩溃 : Text Segment corruption

我们的是基于PowerPC的嵌入式系统,运行Linux。我们遇到了一个随机的SIGILL崩溃,这种崩溃在各种应用程序中都会出现。崩溃的根本原因是要执行的指令归零。这表明驻留在内存中的文本段已损坏。由于文本段以只读方式加载,因此应用程序无法破坏它。所以我怀疑是某些常见的子系统(DMA?)导致了这种损坏。由于问题需要几天时间才能重现(由于SIGILL而导致崩溃),因此调查变得越来越困难。因此,首先我想知道任何应用程序的文本段是否以及何时已损坏。我查看了堆栈跟踪和所有指针、寄存器都是正确的。你们有什么建议吗?一些信息:Linux3.12.19-rt30#1SMPFriMar1101:31:2

c - 如何将 2 个部分放入 1 个部分(使用 ld 脚本)

我有以下链接描述文件:SECTIONS{.arora_exec_free_space4399531:{*(.text)*(.rodata)*(.data.rel.ro.local)}.arora_data_free_space(ADDR(.arora_exec_free_space)+SIZEOF(.arora_exec_free_space)):AT(7592352){*(.data)*(.bss)*(.got)}}当我编译我的程序时,这两个部分(exec和数据)位于不同的LOAD段中。我想把这两个部分(.arora_data_free_space和.arora_exec_free_

c - 如何将 2 个部分放入 1 个部分(使用 ld 脚本)

我有以下链接描述文件:SECTIONS{.arora_exec_free_space4399531:{*(.text)*(.rodata)*(.data.rel.ro.local)}.arora_data_free_space(ADDR(.arora_exec_free_space)+SIZEOF(.arora_exec_free_space)):AT(7592352){*(.data)*(.bss)*(.got)}}当我编译我的程序时,这两个部分(exec和数据)位于不同的LOAD段中。我想把这两个部分(.arora_data_free_space和.arora_exec_free_