前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >labelme教程_label shop

labelme教程_label shop

作者头像
全栈程序员站长
发布2022-10-03 10:46:30
1.1K0
发布2022-10-03 10:46:30
举报

大家好,又见面了,我是你们的朋友全栈君。

  1. 如何查看自己labelme安装的位置 例如通过pip3.8安装
代码语言:javascript
复制
pip3.8 install labelme

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

代码语言:javascript
复制
pip3.8 -V

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

  1. delete 删除标签时,不再弹出对话框 找到./python/site-packages/labelme/app.py
代码语言:javascript
复制
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
代码语言:javascript
复制
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
代码语言:javascript
复制
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安装
代码语言:javascript
复制
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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022年9月3日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com