用Python 获取图片的的宽和高,并且转换成json文件
时间: 2024-05-05 16:17:50 浏览: 22
可以使用Python中的Pillow库来获取图片的宽和高,并将其转换成json文件,代码如下:
```python
from PIL import Image
import json
img = Image.open("image.jpg")
width, height = img.size
data = {"width": width, "height": height}
json_data = json.dumps(data)
print(json_data)
```
这段代码可以打开名为"image.jpg"的图片,获取其宽和高,并将其转换成json格式的数据,最后输出json数据。
相关问题
那怎么用生成的png文件转换成json文件
将生成的png文件转换成json文件也可以使用Python中的Pillow库,具体代码如下:
```python
from PIL import Image
import json
# 读取png文件
img = Image.open('/path/to/png/file')
# 转换成RGB模式
img = img.convert('RGB')
# 获取图片的宽和高
width, height = img.size
# 创建空的json数据
data = {'width': width, 'height': height, 'shapes': []}
# 遍历每个像素点
for y in range(height):
for x in range(width):
# 获取像素点的颜色
r, g, b = img.getpixel((x, y))
# 如果该像素点是白色,则跳过
if r == g == b == 255:
continue
# 添加一个新的形状
shape = {
'label': 'object',
'points': [[x, y]],
'group_id': None,
'shape_type': 'point',
'flags': {}
}
# 将该形状添加到json数据中
data['shapes'].append(shape)
# 将json数据保存到文件中
with open('/path/to/json/file', 'w') as f:
json.dump(data, f)
```
这段代码与前面的代码基本相同,只是将读取图片的部分改为了读取png文件,并且将最终生成的json文件保存到了指定的路径中。这样就可以将png文件转换成json文件了。
用python实现将coco格式的json文件批量转换成对应的mask
抱歉,我可以回答这个问题。你可以使用Python中的COCO API库将coco格式的json文件转换成对应的mask。代码示例如下:
```
from pycocotools.coco import COCO
import numpy as np
import skimage.io as io
import matplotlib.pyplot as plt
import pylab
pylab.rcParams['figure.figsize'] = (8.0, 10.0)
# 初始化COCO API
ann_file = 'PATH_TO_ANNOTATIONS_FILE'
coco = COCO(ann_file)
# 获取所有图像的ID
img_ids = coco.getImgIds()
# 循环处理每张图片
for img_id in img_ids:
# 加载图像和注释
img = coco.loadImgs(img_id)[0]
ann_ids = coco.getAnnIds(imgIds=img['id'])
anns = coco.loadAnns(ann_ids)
# 创建空白掩码
mask = np.zeros((img['height'], img['width']))
# 循环处理每个注释
for ann in anns:
# 提取多边形顶点坐标
polygons = ann['segmentation']
# 根据多边形顶点坐标创建掩码
mask = coco.annToMask(ann)
# 保存掩码为PNG文件
io.imsave('PATH_TO_SAVE_MASK' + img['file_name'].replace('.jpg', '.png'), mask)
```
在上述代码中,`ann_file`为coco格式的json文件路径,`PATH_TO_SAVE_MASK`为你希望保存掩码文件的路径。运行代码后,将得到与原始图像对应的掩码文件。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)