精华内容
下载资源
问答
  • Python批量制作索引

    2020-05-14 21:32:30
    python 批量制作索引图 python批量制作索引图 最近看的语义分割GSCNN代码的数据集为cityscapes类型,代码中需要的标签图为索引图,而我的标签是8通道RGB图,所以参考了两篇博客。我是二分类,只有背景和一类标注。...

    python 批量制作索引图

    python批量制作索引图

    最近看的语义分割GSCNN代码的数据集为cityscapes类型,代码中需要的标签图为索引图,而我的标签是3通道RGB图,所以参考了两篇博客。我是二分类,只有背景和一类标注。制作索引图记录。生成的索引图label为0,1。没上色的索引图可能看着是全黑,但是使用matlab显示图像利用工具可以看到标注的像素值不同。
    参考:python制作索引图
    python制作索引图

    代码

    # coding:utf-8
    '''
    制作索引图
    '''
    # coding:utf-8
    
    from random import randint
    from PIL import Image
    import os
    input_dir = 'D:/Users/caixingmin/Desktop/save/'
    out_dir = 'D:/Users/caixingmin/Desktop/tupian/'
    
    a = os.listdir(input_dir)
    #def randomPalette(length, min, max):
        #return [randint(min, max) for x in range(length)]
    palette = [0, 0, 0,
               128, 0, 0, ]#调色板颜色
    
    # paletteID = randomPalette(768, 0, 255)    #用于多分类
    label_pixel_value = 178  # 标注物体的像素值(转换成灰度图像后)
    #path = 'D:\\Users\\caixingmin\\Desktop\\CamVid_runway2\\train_labels\\0014.png'
    for i in a[0:]:
        #print(i)
        img = Image.open(input_dir+i).convert('L')
        for x in range(img.size[0]):
            for y in range(img.size[1]):
                if img.getpixel((x, y)) == label_pixel_value:  # 给标注部分分配一个像素值,多分类分配多个像素值
                    img.putpixel((x, y), 1)
                else:
                    img.putpixel((x, y), 0)  # 背景部分
    
        #img.show()
         img.putpalette(palette)  # 一分类, 【0,0,0】是背景,【128,0,0】是标注物,不上色的时候注释掉
    # img.putpalette(paletteID)  # 多分类   # 需要图像上有多类像素值
    
    #img.show()
    
        img.save(out_dir+i)
    

    图片

    背景的index为0,[R,G,B]为[0 0 0]
    在这里插入图片描述

    标注物像素值

    label_pixel_value = 178 # 标注物体的像素值(转换成灰度图像后)

    上述代码中的label_pixel_value是标签转换成灰度图像之后的标注物的像素值。转换成灰度图代码:

    from PIL import Image
    import os
    input_dir = 'D:/Users/ca/Desktop/shi/'
    out_dir = 'D:/Users/ca/Desktop/tupian/'
    #可以只转换单张看像素值就好
    a = os.listdir(input_dir)
    
    for i in a[0:]:
     
        img = Image.open(input_dir + i).convert('L')
        img.save(out_dir+i)
    

    转换后通过matlab查看灰度图片对应标注物的index
    标注物index=38
    所以这里 label_pixel_value = 38

    展开全文
  • 制作索引图 labelme

    千次阅读 2017-12-18 17:07:22
    制作索引图 labelme

    下载地址:https://github.com/wkentaro/labelme

    Labelme is a graphical image annotation tool inspired by http://labelme.csail.mit.edu.
    It is written in Python and uses Qt for its graphical interface.

    Requirements

    Installation

    There are options:

    • Platform agonistic installation: Anaconda, Docker
    • Platform specific installation: Ubuntu, macOS

    Anaconda

    You need install Anaconda, then run below:

    conda create --name=labelme python=2.7
    source activate labelme
    conda install pyqt
    pip install labelme

    Docker

    You need install docker, then run below:

    wget https://raw.githubusercontent.com/wkentaro/labelme/master/scripts/labelme_on_docker
    chmod u+x labelme_on_docker
    
    # Maybe you need http://sourabhbajaj.com/blog/2017/02/07/gui-applications-docker-mac/ on macOS
    ./labelme_on_docker static/apc2016_obj3.jpg -O static/apc2016_obj3.json

    Ubuntu

    sudo apt-get install python-qt4 pyqt4-dev-tools
    sudo pip install labelme

    macOS

    brew install qt qt4 || brew install pyqt  # qt4 is deprecated
    pip install labelme

    Usage

    Annotation

    Run labelme --help for detail.

    labelme  # Open GUI
    labelme static/apc2016_obj3.jpg  # Specify file
    labelme static/apc2016_obj3.jpg -O static/apc2016_obj3.json  # Close window after the save

    The annotations are saved as a JSON file. The file includes the image itself.

    Visualization

    To view the json file quickly, you can use utility script:

    labelme_draw_json static/apc2016_obj3.json

    Convert to Dataset

    To convert the json to set of image and label, you can run following:

    labelme_json_to_dataset static/apc2016_obj3.json

    Sample

    Screencast

    Acknowledgement

    This repo is the fork of mpitid/pylabelme, whose development is currently stopped.



    展开全文
  • python制作索引图像

    千次阅读 2018-06-26 15:22:47
    一、什么是索引索引图像是一种把像素值直接作为RGB调色板下标的图像。索引图像可把像素值“直接映射”为调色板数值。 一幅索引图包含一个数据矩阵data和一个调色板矩阵map,数据矩阵可以是uint8,uint16或双...

    一、什么是索引图

    索引图像是一种把像素值直接作为RGB调色板下标的图像。索引图像可把像素值“直接映射”为调色板数值。
    一幅索引图包含一个数据矩阵data和一个调色板矩阵map,数据矩阵可以是uint8,uint16或双精度类型的,而调色板矩阵则总是一个m×3的双精度矩阵。
    索引模式和灰度模式比较类似,它的每个象素点也可以有256种颜色容量,但它可以负载彩色。灰度模式的图像最多只能有256种颜色。当图像转换成索引模式时,系统会自动根据图像上的颜色归纳出能代表大多数的256种颜色,就象一张颜色表,然后用这256种来代替整个图像上所有的颜色信息。
    索引的图像只支持一个图层,并且只有一个索引彩色通道。
    索引模式的图像就像是一块块由彩色的小瓷砖所拼成的,由于它最多只能有256种彩色,所以它所形成的文件相对其它彩色要小得多。索引模式的另一个好处是它所形成的每一个颜色都有其独立的索引标识。当这种图像在网上发布时,只要根据其索引标识将图像重新识别,它的颜色就完全还原了。
    索引模式主要用于网络上的图片传输和一些对图像象素、大小等有严格要求的地方。
    摘自百度百科

    简单来说类似于有颜色的灰度图。
    二、索引图像在python中的表示
    在使用python制作索引图像是要用到Pillow库,其中P模式就是索引图像模式。
    这里写图片描述
    ·三.如何制作索引图
    使用Pilow库中的这个函数
    Image.putpalette(data, rawmode=’RGB’)
    Attaches a palette to this image. The image must be a “P” or “L” image, and the palette sequence must contain 768 integer values, where each group of three values represent the red, green, and blue values for the corresponding pixel index. Instead of an integer sequence, you can use an 8-bit string.
    Parameters:
    • data – A palette sequence (either a list or a string).
    • rawmode – The raw mode of the palette.
    示例图片
    1、灰度图
    这里写图片描述
    制作完成后的图像
    这里写图片描述
    代码示例

    # coding:utf-8
    '''
    制作索引图
    '''
    from random import randint
    from PIL import Image
    def randomPalette(length, min, max):
        return [randint(min, max) for x in xrange(length)]
    path = '1_127.png'
    img = Image.open(path)
    # img.show()
    i = randomPalette(768, 0, 255)
    print i
    print len(i)
    img.putpalette(i)
    print img
    img.show()
    img.save('2.png')
    

    第一张图是灰度图,里面只有3个值0,1,2下面的图是生成的索引图片。根据灰度图的值然后和生成的随机768个数,每三个数表示一个rgb值 做map映射 0表示第一个rgb值 1表示第二个rgb值,以此类推
    img.putpalette(i)改为 img.putpalette([0,0,0,0,255,0,0,0,255])生成的索引图如下
    黑色代表原灰度值为0,蓝色代表原灰度值为1,蓝色代表原灰度值为2
    这里写图片描述

    展开全文
  • 参考:  ... # coding:utf-8 from random import randint from PIL import Image ...def randomPalette(length, min, max): ...索引图: Please adjust the code according to your project !

    参考:  https://blog.csdn.net/tellsummer/article/details/80815826

    # coding:utf-8
    
    from random import randint
    from PIL import Image
    import os
    
    def randomPalette(length, min, max):
        return [randint(min, max) for x in range(length)]
    
    # paletteID = randomPalette(768, 0, 255)    #用于多分类
    label_pixel_value = 255    # 标注物体的像素值(转换成灰度图像后)
    
    path = '0967.png'
    img = Image.open(path).convert('L')
    
    img.show()
    
    for x in range(img.size[0]):
        for y in range(img.size[1]):
            if img.getpixel((x, y)) ==label_pixel_value: # 给标注部分分配一个像素值,多分类分配多个像素值
                img.putpixel((x, y), 1)
            else:
                img.putpixel((x, y), 0)    #背景部分
    
    img.putpalette([0, 0, 0, 0, 255, 0])  # 一分类, 【0,0,0】是背景,【0,255,0】是标注物
    # img.putpalette(paletteID)  # 多分类   # 需要图像上有多类像素值
    
    img.show()
    img.save('index_pic.png')

     

    原图:

     

    标注图:

     

    索引图:

    Please adjust the code according to your project !

    展开全文
  • 制作OSGB数据索引

    千次阅读 2019-04-22 11:05:00
    【干货】教你用.S3C文件制作OSGB数据索引 【干货】教你用.S3C文件制作OSGB数据索引_搜狐汽车_搜狐网 S3C是ContextCapture(原Smart 3D)的一种数据格式,.S3C格式索引可以将OSGB格式的块模型在Acute3D viewer中同时...
  • 索引

    千次阅读 2017-04-01 14:51:27
    1、索引的定义 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 简单地说,索引是对数据库表中一列或多列的值进行排序的一种结构...
  • oracle 索引

    2008-07-09 16:54:00
    今天才发现oracle索引和主键是有区别的。...经常查询的一些字段制作索引。这些字段重复值不要太多,最好是能够作为主码的一些字段,或者字段组合。把行数小的表放入内存。alter table mytable cache查询:select
  • html <!-- 字母索引 --> <div class="altherList"> <p class='letter' @click="clickIndexBar(index)" v-for="(item,index) in indexList" :key="index" ...
  • 在利用Word文档制作会议记录等文件时,由于内容太多,为了方便了解文档大纲我们往往需要制作一个目录索引。那么很多小伙伴就有了疑惑,这个看似简单的目录索引到底该如何制作呢?今天小编就来教大家快速制作目录索引...
  • excel的索引目录怎样制作

    千次阅读 2014-03-28 14:30:29
    excel的索引目录怎样制作 按下组合键Alt+F11打开VBA编辑器,单击左边工程管理器,插入模块,在模块1中输入如下代码“ Sub 生成目录()  Dim i, x As Integer  Dim Sht1 As Worksheet  Dim Str1...
  • 更改DataFrame索引为从1开始的自然数 【函数说明】 实际上对于人来说更习惯于从零开始索引单元格,这样也不会容易出错。而建立一个DataFrame变量后默认索引是从零开始的,还有一些由于如导入等,默认添加的索引甚至...
  • 最近几天花了点时间,制作了一下教程,写了几篇 开源博客 秋色园 QBlog 模板皮肤制作文章,这里给出一个索引: PS:同时 秋色园 也增加了四套皮肤,目前共有8套皮肤。   1:ASP.NET开源博客QBlog模板制作教程...
  • 集合中已经有了200万条的...我们先制作一个普通查询,随便查找一个用户名,并计算出查询和打印的时间,因为有200万条数据,所以性能不会很高。 var startTime = new Date().getTime() //得到程序运行的开始时间 va...
  • 查询索引

    2018-10-17 17:29:00
    【查询索引】 查询索引也是搜索的过程。搜索就是用户输入关键字。从索引(index)中进行搜索的过程。根据关键字搜索索引,...Lucene不提供制作用户搜索界面的功能。 【创建查询】 用户输入关键字执行搜索之前...
  • 制作联合索引(d,a,b,c) 工作原理: 对于连续多个and:mysql会按照联合索引,从左到右的顺序找一个区分度高的索引字段(这样便可以快速锁定很小的范围),加速查询,即按照d—>a->b->c的顺序 #3、or的工作...
  • Web Page中地图索引制作

    千次阅读 2004-12-07 21:41:00
    Web Page中地图索引制作在实际Web Page制作中,常常会遇到需要通过一整幅图象中的某些索引图标来产生URL跳转的情形。若不通过MAP机制,我们不得不把整幅图象分割成许多小块的独立图标图象,通过多个的语句来实现...
  • Linux源代码提供了制作cscope索引文件和tags文件的make命令。 一,软件安装 先安装cscope: sudo apt-get install cscope 在安装ctags: http://ctags.sourceforge.net/ 可以使用:ctags –version...
  • 巧用工具制作视频截图索引文件

    千次阅读 2011-01-08 21:35:00
    格式的文件,这里还有一个好处,就是,我们可以在这里做索引、做书签。在我们视频截图的重要部分做好标记,这样,一个属于我们自己的视频 PDF 索引文件就做出来了。你看,是不是比你那里一张一张翻图片要好得多呀。...
  • 1. MongoDB索引策略和索引类型–简介 MongoDB是一个开放源代码,面向文档的跨平台数据库,它使用C ++开发,并且是最流行和使用最广泛的NoSQL类型数据库之一。 它可在具有键-值对的类JSON文档的顶部运行,其键值对在...
  • swiper制作抢购轮播、滑动或点击时获取对应的索引 先看效果图: 介绍: 这里只是做了个效果没有做交互,不过效果有了数据直接套就行了,样式表的话就不在这里展示了(你们都会的~) 下面的js代码是 当点击左右箭头时...
  • mysql索引原理

    千次阅读 2019-06-19 14:35:05
     聚集索引与辅助索引  MySQL索引管理  测试索引  正确使用索引  联合索引  查询优化神器-explain  慢查询优化的基本步骤  慢日志管理 一 初识索引 为什么要有索引? 一般的应用系统,...
  • pandas层次化索引 # 导入模块,将其别名 import numpy as np import pandas as pd from pandas import Series,DataFrame import matplotlib.pyplot as plt 一. 创建多层行索引 1、 隐式构造 1)最常见的方法...
  • 由于Boost官网的数据都是以网页的形式呈现的,但是制作索引的时候直接对网页进行操作就比较麻烦,所以这个阶段就是对Boost官网的网页数据先做一个预处理,将它变成制作索引的时候容易处理的形式。 ...
  • 索引类型

    2010-12-17 21:12:00
    没学好索引类型,专来记下笔记,我不能忘记   11.2. 索引类型 PostgreSQL 提供了好几种索引类型∶ B-tree,R-tree,GiST 和散列.每种索引类型都比较适合某些特定的查询类型, 因为它们用了...
  • 用gromacs制作分子层,并进行之后的nvt模拟。 在这里已经制作了能量收敛的水分子层,现在我们需要在合适的位置加上蛋白质盖子。 融合蛋白质层和水分子层 这里用gromacs搭建,原理是将水做为原始蛋白然后插入一层下...
  • 缺失索引

    2013-05-31 16:56:29
    当大家发现数据库查询性能很慢的时候,大家都会想到加索引来优化数据库查询性能,但是面对一个复杂的SQL语句,找到一个优化的索引组合对人脑来讲,真的不是一件很简单的事。 好在SQLSERVER提供了两种“自动”功能,...
  • MySQL 索引设计原则

    千次阅读 2018-07-27 02:23:25
    MySQL 索引设计原则: (1)对于经常查询的字段,建议创建索引。 (2)索引不是越多越好,一个表如果有大量索引,不仅占用磁盘空间,而且会影响INSERT,DELETE,UPDATE等语句的性能。 (3)避免对经常更新的表...
  • 使用UITableView的索引

    2014-12-12 19:44:07
    刚刚在制作字母索引列表时用到了索引的一些知识,整理一下: 1.索引数与分区数相同,不需要设置, //返回section的个数 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 2.索引实质...
  • LATEX之索引

    2020-08-25 21:35:51
    \documentclass[a4paper]{ctexart} ... %使用makeidx宏包来建立索引索引标题通过重定义\indexname更改。 %在导言区加载makeidx宏包,并输入\makeindex开始收集索引。 %在文中使用\index命令来插入索引标签。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 73,509
精华内容 29,403
关键字:

如何制作索引