只生成拉伸tiff,与港口坐标
parent
c702658884
commit
1a5372f04a
|
|
@ -359,6 +359,50 @@ def slicePortDataset(rootname,im_data,src_im_data, im_Geotrans, im_proj, outfold
|
||||||
print("图像切片结束")
|
print("图像切片结束")
|
||||||
return slice_ID
|
return slice_ID
|
||||||
|
|
||||||
|
def sliceLabelPortDataset(rootname,im_data,src_im_data, im_Geotrans, im_proj, outfolder,slice_ID,portfilestr):
|
||||||
|
# 读取portfilestr 中文件
|
||||||
|
MLCPoints=[]
|
||||||
|
JLCPoints=[]
|
||||||
|
MJLCPoints=[]
|
||||||
|
with open(portfilestr,"r",encoding="utf-8") as portfile:
|
||||||
|
for line in portfile.readlines():
|
||||||
|
if(len(line)>3):
|
||||||
|
linemetas=line.split("\t\t")
|
||||||
|
clsname=linemetas[0]
|
||||||
|
pointstr=linemetas[1]
|
||||||
|
pointx=float(pointstr.split(",")[0])
|
||||||
|
pointy=float(pointstr.split(",")[1])
|
||||||
|
if clsname=="JLC":
|
||||||
|
JLCPoints.append([pointx,pointy])
|
||||||
|
elif clsname=="MJLC":
|
||||||
|
MJLCPoints.append([pointx,pointy])
|
||||||
|
elif clsname=="MLC":
|
||||||
|
MLCPoints.append([pointx,pointy])
|
||||||
|
# 处理文件脚本
|
||||||
|
if len(MLCPoints)==0 and len(JLCPoints)==0 and len(MJLCPoints)==0:
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
# 切片主流程
|
||||||
|
portuint8Tifffolder=os.path.join(outfolder,"港口","unit8tiff")
|
||||||
|
portlabelfolder=os.path.join(outfolder,"港口","MLCLabels")
|
||||||
|
unit8tiffPath=os.path.join(portuint8Tifffolder,"{}_uint8.tiff".format(rootname))
|
||||||
|
uint8labelPath=os.path.join(portlabelfolder,"{}_uint8.csv".format(rootname))
|
||||||
|
write_envi(im_data,im_Geotrans,im_proj,unit8tiffPath)
|
||||||
|
with open(portfilestr,"r",encoding="utf-8") as portfile:
|
||||||
|
with open(uint8labelPath, "w", encoding="utf-8") as labelfile:
|
||||||
|
for line in portfile.readlines():
|
||||||
|
if (len(line) > 3):
|
||||||
|
linemetas = line.split("\t\t")
|
||||||
|
clsname = linemetas[0]
|
||||||
|
pointstr = linemetas[1]
|
||||||
|
pointx = float(pointstr.split(",")[0])
|
||||||
|
pointy = float(pointstr.split(",")[1])
|
||||||
|
labelfile.write("{},{},{}\n".format(pointx,pointy,clsname))
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def stretchSliceProcess(infilepath, outfolder,portfilestr, strechmethod):
|
def stretchSliceProcess(infilepath, outfolder,portfilestr, strechmethod):
|
||||||
|
|
@ -367,18 +411,22 @@ def stretchSliceProcess(infilepath, outfolder,portfilestr, strechmethod):
|
||||||
shiptifffolder=os.path.join(outfolder,"舰船","tifffolder")
|
shiptifffolder=os.path.join(outfolder,"舰船","tifffolder")
|
||||||
allpngfolder = os.path.join(outfolder, "allpngfolder")
|
allpngfolder = os.path.join(outfolder, "allpngfolder")
|
||||||
|
|
||||||
portbinfolder=os.path.join(outfolder,"港口","unit8binfolder")
|
# portbinfolder=os.path.join(outfolder,"港口","unit8binfolder")
|
||||||
portpngfolder=os.path.join(outfolder,"港口","pngfolder")
|
# portpngfolder=os.path.join(outfolder,"港口","pngfolder")
|
||||||
porttifffolder=os.path.join(outfolder,"港口","tifffolder")
|
# porttifffolder=os.path.join(outfolder,"港口","tifffolder")
|
||||||
|
|
||||||
|
portuint8Tifffolder=os.path.join(outfolder,"港口","unit8tiff")
|
||||||
|
portlabelfolder=os.path.join(outfolder,"港口","MLCLabels")
|
||||||
|
|
||||||
existOrCreate(shipbinfolder)
|
existOrCreate(shipbinfolder)
|
||||||
existOrCreate(shippngfolder)
|
existOrCreate(shippngfolder)
|
||||||
existOrCreate(shiptifffolder)
|
existOrCreate(shiptifffolder)
|
||||||
existOrCreate(allpngfolder)
|
existOrCreate(allpngfolder)
|
||||||
existOrCreate(portbinfolder)
|
# existOrCreate(portbinfolder)
|
||||||
existOrCreate(portpngfolder)
|
# existOrCreate(portpngfolder)
|
||||||
existOrCreate(porttifffolder)
|
# existOrCreate(porttifffolder)
|
||||||
|
existOrCreate(portuint8Tifffolder)
|
||||||
|
existOrCreate(portlabelfolder)
|
||||||
|
|
||||||
|
|
||||||
im_proj, im_Geotrans, im_data=read_tif(infilepath)
|
im_proj, im_Geotrans, im_data=read_tif(infilepath)
|
||||||
|
|
@ -388,9 +436,11 @@ def stretchSliceProcess(infilepath, outfolder,portfilestr, strechmethod):
|
||||||
rootname=Path(infilepath).stem
|
rootname=Path(infilepath).stem
|
||||||
allImagePath=os.path.join(allpngfolder, rootname+"_all.png")
|
allImagePath=os.path.join(allpngfolder, rootname+"_all.png")
|
||||||
Image.fromarray(im_data).save(allImagePath,compress_level=0)
|
Image.fromarray(im_data).save(allImagePath,compress_level=0)
|
||||||
|
slice_ID=0
|
||||||
slice_ID=sliceShipDataset(rootname,im_data, src_im_data,im_Geotrans, im_proj, outfolder)
|
slice_ID=sliceShipDataset(rootname,im_data, src_im_data,im_Geotrans, im_proj, outfolder)
|
||||||
slice_ID=slice_ID+1
|
slice_ID=slice_ID+1
|
||||||
slice_ID=slicePortDataset(rootname,im_data, src_im_data,im_Geotrans, im_proj, outfolder,slice_ID,portfilestr)
|
# slice_ID=slicePortDataset(rootname,im_data, src_im_data,im_Geotrans, im_proj, outfolder,slice_ID,portfilestr)
|
||||||
|
slice_ID=sliceLabelPortDataset(rootname,im_data, src_im_data,im_Geotrans, im_proj, outfolder,slice_ID,portfilestr)
|
||||||
print("图像切片与拉伸完成")
|
print("图像切片与拉伸完成")
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue