labelme教程_label shop

labelme教程_label shopdelete删除标签时,不再弹出对话框找到./python/site-packages/labelme/app.pydefdeleteSelectedShape(self):self.remLabels(self.canvas.deleteSelected())self.setDirty()ifself.noShapes():foractioninself.actions.onShapesPresent:..

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

  1. 如何查看自己labelme安装的位置
    例如通过pip3.8安装
pip3.8 install labelme

可以通过查看pip3.8版本寻找对应的python安装位置

pip3.8 -V

然后就可以在对应版本的python下修改相应的文件

  1. delete 删除标签时,不再弹出对话框

    找到./python/site-packages/labelme/app.py

def deleteSelectedShape(self):
        self.remLabels(self.canvas.deleteSelected())
        self.setDirty()
        if self.noShapes():
            for action in self.actions.onShapesPresent:
                action.setEnabled(False)
        #yes, no = QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No
        #msg = self.tr(
        #    "You are about to permanently delete {} polygons, "
        #    "proceed anyway?"
        #).format(len(self.canvas.selectedShapes))
        #if yes == QtWidgets.QMessageBox.warning(
        #    self, self.tr("Attention"), msg, yes | no, yes
        #):
            #self.remLabels(self.canvas.deleteSelected())
            #self.setDirty()
            #if self.noShapes():
            #    for action in self.actions.onShapesPresent:
            #        action.setEnabled(False)
  1. 选择其他图像,自动保存当前标签信息,不再弹出对话框
    找到./python/site-packages/labelme/app.py
def mayContinue(self):
        if not self.dirty:
            return True
        self.saveFile()
        return True
        #mb = QtWidgets.QMessageBox
        #msg = self.tr('Save annotations to "{}" before closing?').format(
        #    self.filename
        #)
        #answer = mb.question(
        #    self,
        #    self.tr("Save annotations?"),
        #    msg,
        #    mb.Save | mb.Discard | mb.Cancel,
        #    mb.Save,
        #)
        #if answer == mb.Discard:
        #    return True
        #elif answer == mb.Save:
        #    self.saveFile()
        #    return True
        #else:  # answer == mb.Cancel
        #    return False
  1. imageData 不再存储 image的信息,减少json存储大小
    找到./python/site-packages/labelme/label_file.py
    imageData=imageData 改为 imageData=None
def save(
        self,
        filename,
        shapes,
        imagePath,
        imageHeight,
        imageWidth,
        imageData=None,
        otherData=None,
        flags=None,
    ):
        if imageData is not None:
            imageData = base64.b64encode(imageData).decode("utf-8")
            imageHeight, imageWidth = self._check_image_height_and_width(
                imageData, imageHeight, imageWidth
            )
        if otherData is None:
            otherData = {}
        if flags is None:
            flags = {}
        data = dict(
            version=__version__,
            flags=flags,
            shapes=shapes,
            imagePath=imagePath,
            # imageData=imageData,
            imageData=None,
            imageHeight=imageHeight,
            imageWidth=imageWidth,
        )
        for key, value in otherData.items():
            assert key not in data
            data[key] = value
        try:
            with open(filename, "w") as f:
                json.dump(data, f, ensure_ascii=False, indent=2)
            self.filename = filename
        except Exception as e:
            raise LabelFileError(e)
  1. image list 列表按照资源管理器进行排序,顺序显示图像
    找到./python/site-packages/labelme/app.py
    首先 import natsort,如果没有安装,可以pip install natsort安装
def scanAllImages(self, folderPath):
        extensions = [
            ".%s" % fmt.data().decode().lower()
            for fmt in QtGui.QImageReader.supportedImageFormats()
        ]

        images = []
        for root, dirs, files in os.walk(folderPath):
           for file in files:
               if file.lower().endswith(tuple(extensions)):
                   relativePath = osp.join(root, file)
                   images.append(relativePath)
        # images.sort(key=lambda x: x.lower())
        images = natsort.natsorted(images)
        return images
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197702.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • JDBC连接数据库6个步骤

    JDBC连接数据库6个步骤JDBC连接数据库,创建一个以JDBC连接数据库的程序,包含7个步骤:   首先准备JDBC所需的四个参数(user,password,url,driverClass)(1)user用户名(2)password密码(3)URL定义了连接数据库时的协议、子协议、数据源标识,它们之间用冒号隔开。  书写形式:  协议:子协议:数据源标识       协议:在JDBC中总是以jdb…

  • 在系统设计中应用迪米特法则_软件设计原则口诀

    在系统设计中应用迪米特法则_软件设计原则口诀  迪米特原则又叫 迪米特法则/最少知道原则。现在我们给出迪米特原则的定义:一个对象应该对其他对象保持最少的了解。它的优点是降低了类之间的耦合。它强调只和朋友交流,不和陌生人说话。其中朋友是指出现在成员变量、方法的输入、输出参数中的类称为成员朋友类,而出现在方法体内部的类不属于朋友类。 下面我们通过代码,更好的解释迪米特原则。比如我是一个公司的老板,我开了一家网上课程网站,我让我的…

  • allure安装配置「建议收藏」

    allure安装配置「建议收藏」一、下载allurehttps://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.7.0/allure-2.7.0.zip二、检查本机是否有java的运行环境1、win+r输入cmd回车打开终端窗口打开效果入下2、输入java回车安装成功效果如下:安装未成功效果如下:3、输入javac回车…

  • ASP.NET项目开发详解

    ASP.NET项目开发详解#ASP.NET项目开发详解###1ASP.NET开发基础####1.1认识网页和网站#####1.1.1网页#####1.1.2网站####1.2网站开发基础#####1.2

  • origin画图标注_origin图线上的特殊符号怎么弄

    origin画图标注_origin图线上的特殊符号怎么弄Origin画图标签常见语法下标:-(x)上标:+(x)斜体:\i(x)加粗:\b(x)x下标y上标:=(x,y)

  • 永远埋藏我的故事_把你藏进我的回忆

    永远埋藏我的故事_把你藏进我的回忆因为本身大家看来可能就很俗套吧!可是昨天他的一句话,我地动山摇,他还是牺牲了我来成全他的事业!在我没发生这件事情之前,我也很轻描淡写的劝我曾经遇见这样事情的大学同学,可是没想到一向心高气傲的我也会这样不理智,甚至可以说是堕落!      今年我大学毕业,说来很可笑,我现在还是初恋,没遇见他之前我的手都没让男生拉过,借别的系的师兄说的话,我是冷美人,可望不可急。是的,我一直都认为漂亮不是资本,而事业

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号