六圖備份 大容量圖片

1.1、切割(9*16)


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''功能:商用圖片切割2048*2048,2*2
作者:阿夏
時間:2023年7月27日 19:51
'''import os
import os.pathfrom PIL import Imagelong=1632
wide=2912small_long=2
small_wide=2
# 目前圖片都是2*2,3*3排列# 1:1圖比例是2048
# 16:9圖片比例 2912:1632
# 3:4圖片比例 1856:2464
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print(lb[wj-1])
a=(lb[wj-1])z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):ll=float(long/small_long*l)longall.append(ll)
print(longall)
# 右側邊的所有參數 長/X
# [0, 512, 1024, 1536, 2048]wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):ww=float(wide/small_wide*w)    wideall.append(ww)
print(wideall)
# 下邊的所有參數 寬/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]pic=[]
for x in range(0,small_wide):for y in range(0,small_long):z1=longall[y]z2=wideall[x]z3=longall[y+1]z4=wideall[x+1]pic.append(z1)pic.append(z2)pic.append(z3)pic.append(z4)
print(len(pic))# 定義文件所在文件夾
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}原圖'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍歷每一張圖片for filename in file_names:print(filename)pic_name = os.path.join(parent, filename)image = Image.open(pic_name)_width, _height = image.sizeprint(_width, _height)qfall=4# 每張圖有4個坐標n=0  for p in range(int(len(pic)/4)):pp=pic[p*4:p*4+4]print(pp)# 定義裁剪范圍(left, upper, right, lower)1024# # box = image.crop((0,0,123,123))box = image.crop((pp[0],pp[1],pp[2],pp[3]))name = filename[:-4]+'_'+str(n) +'.png'print(name)# # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))# # name = filename[:-4]+'_'+str(p) +'.png'2048box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format((lb[wj-1]),name))n+=1#     print('Done!')   # 新建幾個文件夾import os 
# type=int(input('輸入名字.0人物 1卡通 2寵物 3動漫 4風景 5其他\n'))# 建立文件夾
l=['01多余','02檢查完成','03過度修改','04待定','05占位','06占位','07占位','08占位',]for t in l:# 新建所有空白的文件夾dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format(lb[wj-1],t)if not os.path.exists(dir):os.makedirs(dir)

1.2、切割(16*9)


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''功能:商用圖片切割2048*2048,2*2
作者:阿夏
時間:2023年7月27日 19:51
'''import os
import os.pathfrom PIL import Imagelong=2912
wide=1632small_long=2
small_wide=2
# 目前圖片都是2*2,3*3排列# 1:1圖比例是2048
# 16:9圖片比例 2912:1632
# 3:4圖片比例 1856:2464
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print(lb[wj-1])
a=(lb[wj-1])z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):ll=float(long/small_long*l)longall.append(ll)
print(longall)
# 右側邊的所有參數 長/X
# [0, 512, 1024, 1536, 2048]wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):ww=float(wide/small_wide*w)    wideall.append(ww)
print(wideall)
# 下邊的所有參數 寬/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]pic=[]
for x in range(0,small_wide):for y in range(0,small_long):z1=longall[y]z2=wideall[x]z3=longall[y+1]z4=wideall[x+1]pic.append(z1)pic.append(z2)pic.append(z3)pic.append(z4)
print(len(pic))# 定義文件所在文件夾
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}原圖'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍歷每一張圖片for filename in file_names:print(filename)pic_name = os.path.join(parent, filename)image = Image.open(pic_name)_width, _height = image.sizeprint(_width, _height)qfall=4# 每張圖有4個坐標n=0  for p in range(int(len(pic)/4)):pp=pic[p*4:p*4+4]print(pp)# 定義裁剪范圍(left, upper, right, lower)1024# # box = image.crop((0,0,123,123))box = image.crop((pp[0],pp[1],pp[2],pp[3]))name = filename[:-4]+'_'+str(n) +'.png'print(name)# # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))# # name = filename[:-4]+'_'+str(p) +'.png'2048box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format((lb[wj-1]),name))n+=1#     print('Done!')   # 新建幾個文件夾import os 
# type=int(input('輸入名字.0人物 1卡通 2寵物 3動漫 4風景 5其他\n'))# 建立文件夾
l=['01多余','02檢查完成','03過度修改','04待定','05占位','06占位','07占位','08占位',]for t in l:# 新建所有空白的文件夾dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format(lb[wj-1],t)if not os.path.exists(dir):os.makedirs(dir)

1.3切割(1*1)


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''功能:商用圖片切割2048*2048,2*2
作者:阿夏
時間:2023年7月27日 19:51
'''import os
import os.pathfrom PIL import Imagelong=2048
wide=2048small_long=2
small_wide=2
# 目前圖片都是2*2,3*3排列# 1:1圖比例是2048
# 16:9圖片比例 2912:1632
# 3:4圖片比例 1856:2464
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print(lb[wj-1])
a=(lb[wj-1])z=0
longall=[]
longall.append(z)
for l in range(1,small_long+1):ll=float(long/small_long*l)longall.append(ll)
print(longall)
# 右側邊的所有參數 長/X
# [0, 512, 1024, 1536, 2048]wideall=[]
wideall.append(z)
for w in range(1,small_wide+1):ww=float(wide/small_wide*w)    wideall.append(ww)
print(wideall)
# 下邊的所有參數 寬/X
# [0, 682.6666666666666, 1365.3333333333333, 2048.0]pic=[]
for x in range(0,small_wide):for y in range(0,small_long):z1=longall[y]z2=wideall[x]z3=longall[y+1]z4=wideall[x+1]pic.append(z1)pic.append(z2)pic.append(z3)pic.append(z4)
print(len(pic))# 定義文件所在文件夾
image_dir = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}原圖'.format(lb[wj-1])
for parent, dir_name, file_names in os.walk(image_dir):  # 遍歷每一張圖片for filename in file_names:print(filename)pic_name = os.path.join(parent, filename)image = Image.open(pic_name)_width, _height = image.sizeprint(_width, _height)qfall=4# 每張圖有4個坐標n=0  for p in range(int(len(pic)/4)):pp=pic[p*4:p*4+4]print(pp)# 定義裁剪范圍(left, upper, right, lower)1024# # box = image.crop((0,0,123,123))box = image.crop((pp[0],pp[1],pp[2],pp[3]))name = filename[:-4]+'_'+str(n) +'.png'print(name)# # # ,pp[3],pp[4],pp[5],pp[6],pp[7],pp[8],pp[9]))# # name = filename[:-4]+'_'+str(p) +'.png'2048box.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format((lb[wj-1]),name))n+=1#     print('Done!')   # 新建幾個文件夾import os 
# type=int(input('輸入名字.0人物 1卡通 2寵物 3動漫 4風景 5其他\n'))# 建立文件夾
l=['01多余','02檢查完成','03過度修改','04待定','05占位','06占位','07占位','08占位',]for t in l:# 新建所有空白的文件夾dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖\{}'.format(lb[wj-1],t)if not os.path.exists(dir):os.makedirs(dir)

-----------------------------------------------------------------------------------------

2.1?? 四圖轉成 800_800KB測試最大自動篩選


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']import os
from PIL import Image
from PIL import ImageFile
import shutilprint('----第1步:新建臨時文件夾,把png替換成jpg,做出十套圖片-----')
z1=[]
for zz in range(10,101):z1.append(zz)dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}六圖/'.format(lb[wj-1]) # 注意后面的斜杠dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}八百/'.format(lb[wj-1])names=os.listdir(dirname_read)count=0for name in names:img=Image.open(dirname_read+name)img.thumbnail((800, 800),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量# img.resize((800, 800),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量    name=name.split(".")if name[-1] == "png":name[-1] = "jpg"name = str.join(".", name)to_save_path = dirname_write + nameimg = img.convert('RGB')#RGBA意思是紅色,綠色,藍色,Alpha的色彩空間,Alpha指透明度。而JPG不支持透明度,所以要么丟棄Alpha,要么保存為.png文件img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)# 96 31.6# 沒有33.1count+=1print(name)else:continue   pathone=[]pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(lb[wj-1])# 風景變小:160張放在一起、# 風景八百:拆成6張放在一起# print(pr)# 過濾:只保留jpg結尾的圖片imgs=os.listdir(pr)for img in imgs:if img.endswith(".jpg"):pathone.append(pr+'\\'+img)print(pathone)c=int(len(pathone))print(c)# # # 創建多少個文件夾# # # 文件名稱001 002 兩次都仙劍了5個文件夾# # # list1=[]   for t in range(1,int(len(pathone)/6)+1):# 第一次從1開始,name='{}_{}_{}'.format(format(lb[wj-1]),'%03d'%t,str(zz))# 風景_001print(name)# 文件序號確定        u='{}{}素材'.format('%02d'%wj,format(lb[wj-1]))c='臨時文件夾'dir =pathone[t-1][0:35] +'\\'+c+'\\'+name+'\\'print(dir)          # 新建拼合文件夾if not os.path.exists(dir):os.makedirs(dir)tt=pathone[(t-1)*6:(t-1)*6+6]# 0-5 5-10print(tt)for ttt in tt:print(ttt)list_old=ttt# #     print(list_old)list_new=dir#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\卡通八百'
print('----第2步:清空人物/卡通八百里面的數據并新建八百-----')
# 清空并新建八百dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  
# # 刪除所有有圖片或沒有圖片的文件夾
if os.path.exists(dirdir):shutil.rmtree(dirdir)# shutil.remove(dir)# shutil.removedirs(dir)
else:pass
# # 新建人物八百的文件夾
if not os.path.exists(dirdir):os.makedirs(dirdir)print('----第3步:讀取文件夾大小,確定范圍,并篩選最大文件夾的6張圖片的路徑,復制到人物/卡通八百-----')# # # 挑選最大KB的圖片,并復制到八百里,刪除臨時文件夾test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\臨時文件夾'
test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  x=len(z1)
# print(x)lj=[]
ims=os.listdir(test_old)
for im in ims:lj.append(test_old+'\\'+im)
# print(lj)
# # 只要文件夾
# print(len(lj))
# 文件夾數量95個# # 十個數字內部進行比較
z2=[]
for a2 in range(int(len(lj)/x)):c=lj[a2*x:a2*x+x]z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]for f in z2:l_num.clear() l_path.clear() for retall in f:       # print(retall)  # 路徑+圖片名稱 name = os.path.basename(retall)sum = 0def func(dirpath):lst = os.listdir(dirpath)  # 大文件夾下文件列表,包括文件夾for el in lst:new_dir = dirpath+'\\'+elif os.path.isfile(new_dir):getsize = os.path.getsize(new_dir)global sumsum += getsizeelse:func(new_dir)return sumnum = func(retall)KB=int(num/1024)print(KB)if 300<=KB<400:# 刪選出300-400KB的圖片,添加到列表l_num.append(KB)l_path.append(retall)print(l_num)print(l_path)  # KB列表里面的最大值# 注意:如果質量70-100生成的KB不在300-400之間,會出現空值,程序中斷,所以最好把1-100都循環一次,但是這樣時間很長,36份6張 做10-90 91套需要生成3276個文件夾。大約1個小時,1.65GBvalue=max(l_num)                # KB列表里面的最大值idx=l_num.index(value)                # 最大數字雖在的索引數字# print(value,idx)# 最大KB圖片的路徑     l_end.append(l_path[idx])# # # 復制到新路徑
tp=[]
for p4 in range(len(l_end)): o=str(l_end[p4])# print(o)ims4=os.listdir(o)# print(ims4)for im4 in ims4:tp.append(o+'\\'+im4)
# print(tp)
# # 單張圖片的路徑
# print(len(tp)) 
# 12張
#    
for x in range(len(tp)): list_old=tp[x]    # 臨時文件夾里的路徑和圖片名稱print(list_old)# C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\人物八百list_new=test_new+'\\'+list_old[52:0]print(list_new)#     #     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)print('----第4步:刪除臨時文件夾-----')# #       
# 刪除臨時文件夾
if os.path.exists(test_old):shutil.rmtree(test_old)# shutil.remove(dir)# # shutil.removedirs(dir)

2.2? 四圖轉成 800_800KB測試最大自動篩選


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''
圖片6張都整理好以后把風景六圖改成風景八百
'''
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))
# zz=int(input('800壓縮質量83(最后檢查一下是否最大,可以多做幾份,把最大的那幾分拿出來)\n'))date=input('請輸入日期"0708"\n')bh=int(input('分組文件夾的數字,,1(卡通001套)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print('----第1步:新建臨時文件夾,把png替換成jpg,做出十套圖片-----')
import os
from PIL import Image
from PIL import ImageFile
import shutilz1=[]
for zz in range(90,105):z1.append(zz)    # 確定組數,5個5個做對比# print(z1)dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}六圖/'.format(lb[wj-1]) # 注意后面的斜杠dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}八百/'.format(lb[wj-1])names=os.listdir(dirname_read)count=0for name in names:img=Image.open(dirname_read+name)img.thumbnail((1280, 720),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量# img.resize((800, 800),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量    name=name.split(".")if name[-1] == "png":name[-1] = "jpg"name = str.join(".", name)to_save_path = dirname_write + nameimg = img.convert('RGB')#RGBA意思是紅色,綠色,藍色,Alpha的色彩空間,Alpha指透明度。而JPG不支持透明度,所以要么丟棄Alpha,要么保存為.png文件img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)# 96 31.6# 沒有33.1count+=1# print(name)else:continuell=['變小','八百']import shutilpathone=[]pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(lb[wj-1])# 風景變小:160張放在一起、# 風景八百:拆成6張放在一起# print(pr)# 過濾:只保留jpg結尾的圖片imgs=os.listdir(pr)for img in imgs:if img.endswith(".jpg"):pathone.append(pr+'\\'+img)# print(pathone)c=int(len(pathone))# print(c)for t in range(1,int(len(pathone)/1)+1):c='臨時文件夾'dir =pathone[t-1][0:35] +'\\'+c+ '\\'# 新建拼合文件夾if not os.path.exists(dir):os.makedirs(dir)# 只傳1張圖片,沒有文件夾tt=pathone[t-1]# 0-5 5-10list_old=tt#     list_new=dir+pathone[t-1][41:-4]+'_{}'.format(str(zz))+'.jpg'print(list_new)#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\卡通八百'
print('----第2步:清空八百里面的數據并新建八百-----')
# 清空并新建八百dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  
# # 刪除所有有圖片或沒有圖片的文件夾
if os.path.exists(dirdir):shutil.rmtree(dirdir)# shutil.remove(dir)# shutil.removedirs(dir)
else:pass
# # 新建所有空白的文件夾
if not os.path.exists(dirdir):os.makedirs(dirdir)print('----第3步:讀取圖片大小,確定范圍,并篩選最大的的圖片的路徑,復制到卡通八百-----')# # # 挑選最大KB的圖片,并復制到八百里,刪除臨時文件夾test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  
test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\臨時文件夾'lj=[]
ims=os.listdir(test_old)
for im in ims:if im.endswith(".jpg"):lj.append(test_old+'\\'+im)
# print(lj)
# print(len(lj))
# 十個數字內部進行比較x=len(z1)
z2=[]
for a2 in range(int(len(lj)/x)):c=lj[a2*x:a2*x+x]z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]for f in z2:l_num.clear() l_path.clear() for d in f:     # print(d)  # 路徑+圖片名稱  imageSize = os.path.getsize(d)imageSize /= 1024 # 除以1024是代表Kbe=int(round(imageSize))# print(e)if 300<=e<400:# 刪選出300-400KB的圖片,添加到列表l_num.append(e)l_path.append(d)print(l_num)print(l_path)  # KB列表里面的最大值value=max(l_num)                # KB列表里面的最大值idx=l_num.index(value)                # 最大數字雖在的索引數字# print(value,idx)# 最大KB圖片的路徑     l_end.append(l_path[idx])# print(l_num)
# print(l_path)# 最大兩張圖片的路徑
print(l_end)
print(len(l_end))
for a in l_end:print(a)
# ['C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商業接單\\臨時文件夾\\001_1_97.jpg', 'C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商業接單\\臨時文件夾\\001_2_96.jpg']# 復制到新路徑for p in range(len(l_end)):list_old=l_end[p]    # 臨時文件夾里的路徑和圖片名稱print(list_old)list_new=test_new+'\\'+list_old[42:-7]+'.jpg'print(list_new)#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)print('----第4步:刪除臨時文件夾-----')# #       
# 刪除臨時文件夾
if os.path.exists(test_old):shutil.rmtree(test_old)# shutil.remove(dir)# # shutil.removedirs(dir)print('----第5步:把卡通八百內容復制到指定的卡通里面的001里面-----')# #   pathtwo=[]
pr2=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(lb[wj-1])  # 過濾:只保留jpg結尾的圖片
imgs2=os.listdir(pr2)
for img2 in imgs2:if img2.endswith(".jpg"):pathtwo.append(pr2+'\\'+img2)
# print(pathtwo)
c2=int(len(pathtwo))
print(c2)# 新建文件夾
bigname='2023{}_{}素材{}號({}份)'.format(date,lb[wj-1],'%03d'%bh,int(c2))# 新建一個黃色文件夾
dir3 =r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}{}素材\{}".format('%02d'%wj,lb[wj-1],bigname)
if not os.path.exists(dir3):os.makedirs(dir3)# 圖片從舊路徑替換到新路徑
for t2 in range(len(pathtwo)):list_old2 =pathtwo[t2]print(list_old2)list_new2=dir3+"\\"+pathtwo[t2][41:]print(list_new2)#     # # 復制文件(先不要刪除)shutil.copy(list_old2,list_new2)

?2.301-00-03 四圖轉成 720_1280KB 測試最大合并匯總


# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''
圖片6張都整理好以后把風景六圖改成風景八百
'''
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))
# zz=int(input('800壓縮質量83(最后檢查一下是否最大,可以多做幾份,把最大的那幾分拿出來)\n'))date=input('請輸入日期"0708"\n')bh=int(input('分組文件夾的數字,,1(卡通001套)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print('----第1步:新建臨時文件夾,把png替換成jpg,做出十套圖片-----')
import os
from PIL import Image
from PIL import ImageFile
import shutilz1=[]
for zz in range(90,105):z1.append(zz)    # 確定組數,5個5個做對比# print(z1)dirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}六圖/'.format(lb[wj-1]) # 注意后面的斜杠dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}八百/'.format(lb[wj-1])names=os.listdir(dirname_read)count=0for name in names:img=Image.open(dirname_read+name)img.thumbnail((720, 1280),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量# img.resize((800, 800),Image.ANTIALIAS)  # 調整圖片的尺寸長寬 高質量    name=name.split(".")if name[-1] == "png":name[-1] = "jpg"name = str.join(".", name)to_save_path = dirname_write + nameimg = img.convert('RGB')#RGBA意思是紅色,綠色,藍色,Alpha的色彩空間,Alpha指透明度。而JPG不支持透明度,所以要么丟棄Alpha,要么保存為.png文件img.save(to_save_path,"JPEG",quality=zz, optimize=True, progressive=True)# 96 31.6# 沒有33.1count+=1# print(name)else:continuell=['變小','八百']import shutilpathone=[]pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(lb[wj-1])# 風景變小:160張放在一起、# 風景八百:拆成6張放在一起# print(pr)# 過濾:只保留jpg結尾的圖片imgs=os.listdir(pr)for img in imgs:if img.endswith(".jpg"):pathone.append(pr+'\\'+img)# print(pathone)c=int(len(pathone))# print(c)for t in range(1,int(len(pathone)/1)+1):c='臨時文件夾'dir =pathone[t-1][0:35] +'\\'+c+ '\\'# 新建拼合文件夾if not os.path.exists(dir):os.makedirs(dir)# 只傳1張圖片,沒有文件夾tt=pathone[t-1]# 0-5 5-10list_old=tt#     list_new=dir+pathone[t-1][41:-4]+'_{}'.format(str(zz))+'.jpg'print(list_new)#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)# test_masked=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\卡通八百'
print('----第2步:清空八百里面的數據并新建八百-----')
# 清空并新建八百dirdir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  
# # 刪除所有有圖片或沒有圖片的文件夾
if os.path.exists(dirdir):shutil.rmtree(dirdir)# shutil.remove(dir)# shutil.removedirs(dir)
else:pass
# # 新建所有空白的文件夾
if not os.path.exists(dirdir):os.makedirs(dirdir)print('----第3步:讀取圖片大小,確定范圍,并篩選最大的的圖片的路徑,復制到卡通八百-----')# # # 挑選最大KB的圖片,并復制到八百里,刪除臨時文件夾test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百'.format(lb[wj-1])  
test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\臨時文件夾'lj=[]
ims=os.listdir(test_old)
for im in ims:if im.endswith(".jpg"):lj.append(test_old+'\\'+im)
# print(lj)
# print(len(lj))
# 十個數字內部進行比較x=len(z1)
z2=[]
for a2 in range(int(len(lj)/x)):c=lj[a2*x:a2*x+x]z2.append(c)  
# print(z2) 
#  
# l_idx=[]
l_num=[]
l_path=[]
l_end=[]for f in z2:l_num.clear() l_path.clear() for d in f:     # print(d)  # 路徑+圖片名稱  imageSize = os.path.getsize(d)imageSize /= 1024 # 除以1024是代表Kbe=int(round(imageSize))# print(e)if 300<=e<400:# 刪選出300-400KB的圖片,添加到列表l_num.append(e)l_path.append(d)print(l_num)print(l_path)  # KB列表里面的最大值value=max(l_num)                # KB列表里面的最大值idx=l_num.index(value)                # 最大數字雖在的索引數字# print(value,idx)# 最大KB圖片的路徑     l_end.append(l_path[idx])# print(l_num)
# print(l_path)# 最大兩張圖片的路徑
print(l_end)
print(len(l_end))
for a in l_end:print(a)
# ['C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商業接單\\臨時文件夾\\001_1_97.jpg', 'C:\\Users\\jg2yXRZ\\OneDrive\\桌面\\AI商業接單\\臨時文件夾\\001_2_96.jpg']# 復制到新路徑for p in range(len(l_end)):list_old=l_end[p]    # 臨時文件夾里的路徑和圖片名稱print(list_old)list_new=test_new+'\\'+list_old[42:-7]+'.jpg'print(list_new)#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)print('----第4步:刪除臨時文件夾-----')# #       
# 刪除臨時文件夾
if os.path.exists(test_old):shutil.rmtree(test_old)# shutil.remove(dir)# # shutil.removedirs(dir)# print('----第5步:把卡通八百內容復制到指定的卡通里面的001里面-----')# #   # pathtwo=[]
# pr2=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(lb[wj-1])  # # 過濾:只保留jpg結尾的圖片
# imgs2=os.listdir(pr2)
# for img2 in imgs2:
#     if img2.endswith(".jpg"):
#         pathtwo.append(pr2+'\\'+img2)
# # print(pathtwo)
# c2=int(len(pathtwo))
# print(c2)# # 新建文件夾
# bigname='2023{}_{}素材{}號({}份)'.format(date,lb[wj-1],'%03d'%bh,int(c2))# # 新建一個黃色文件夾
# dir3 =r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}{}素材\{}".format('%02d'%wj,lb[wj-1],bigname)
# if not os.path.exists(dir3):
#     os.makedirs(dir3)# # 圖片從舊路徑替換到新路徑
# for t2 in range(len(pathtwo)):#     list_old2 =pathtwo[t2]
#     print(list_old2)#     list_new2=dir3+"\\"+pathtwo[t2][41:]
#     print(list_new2)
#     #     # # 復制文件(先不要刪除)
#     shutil.copy(list_old2,list_new2)

?3.1? 3乘2圖變小圖片最大化

# # -*- coding: utf-8 -*-
# import fitz'''
AI商業接單2.0(一頁2份 動物朝向有的左側、有的右側)
目的:
1、AI商業接單涂色
2、AI商業接單排序
3、AI商業接單分類(向左向右)
作者:阿夏
時間:2023年4月15日)'''# 參考網址:https://blog.csdn.net/weixin_42182534/article/details/125773141?ops_request_misc=&request_id=&biz_id=102&utm_term=python%E6%88%AA%E5%8F%96%E5%9B%BE%E7%89%87%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-125773141.nonecase&spm=1018.2226.3001.4187'''
圖片6張都整理好以后把風景六圖改成風景八百,用來最后轉移到6圖文件夾
'''print('----0,輸入參數- ---')wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))lb=['人物','卡通','寵物','動漫','風景','其他']print('----------第2步:提取六張圖片的路徑------------')import os
from PIL import Imagelb=['人物','卡通','寵物','動漫','風景','其他']
print(lb[wj-1])
a=(lb[wj-1])z1=[]
for zz in range(90,102):z1.append(zz)path=[]pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}六圖".format(a)# 過濾:只保留png結尾的圖片imgs=os.listdir(pr)for img in imgs:if img.endswith(".png"):path.append(pr+'\\'+img)figure=[]for p in range(int(len(path)/6)):pp=path[p*6:p*6+6]figure.append(pp)print(figure)print(len(figure))print('----------第3步:新建一個臨時文件夾------------')# 新建一個”裝N份word和PDF“的文件夾os.mkdir(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\零時Word')print('----------第4步:寫入圖片 ------------')import osimport randomimport timeimport docximport pandas as pdfrom docx import Documentfrom docx2pdf import convertfrom docx.enum.text import WD_PARAGRAPH_ALIGNMENTfrom docx.oxml.ns import qnfrom docx.shared import Cm, Inches, Pt, RGBColorfrom docxtpl import DocxTemplatefor nn in range(0,int(len(path)/6)):    doc = Document(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\6格單圖模板_1024_720(頂格).docx')#    6格圖模板 - 副本.docx')#       # figures=[]# for f in range(len(path))):   # 02# 單元格位置/3*4格bg=[]for x in range(0,3,2):        # 4行for y in range(1,6,2):    # 3列ww='{}{}'.format(x,y)bg.append(ww)print(bg)   # ['00', '02', '04', '20', '22', '24']table = doc.tables[0]          # 4567(8)行for t in range(len(bg)):   # 02pp=int(bg[t][0])    qq=int(bg[t][1])  # print(p)               k=figure[nn][t] print(pp,qq,k)# 寫入圖片run=doc.tables[0].cell(pp,qq).paragraphs[0].add_run()        # 在第1個表格中第2個單元格內插入國旗run.add_picture('{}'.format(k),width=Cm(13.3),height=Cm(13.3))table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER#居中  # # 寫入序號和生肖名稱# run=table.cell(pp,qq).paragraphs[0].add_run(k2)    # 在單元格0,0(第1行第1列)輸入第0個圖圖案# run.font.name = '黑體'#輸入時默認華文彩云字體# # run.font.size = Pt(46)  #輸入字體大小默認30號 換行(一頁一份大卡片# run.font.size = Pt(29)  #輸入字體大小默認30號 一行里(可以一頁兩份)# run.font.bold= True  #是否加粗# run.font.color.rgb = RGBColor(200,200,200) #數字小,顏色深0-255# # paragraph.paragraph_format.line_spacing = Pt(180) #數字段間距# r = run._element# r.rPr.rFonts.set(qn('w:eastAsia'), '黑體')#將輸入語句中的中文部分字體變為華文行楷# table.cell(pp,qq).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER #居中     doc.save(r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\零時Word\{}.docx'.format('%02d'%nn))   from docx2pdf import convert# docx 文件另存為PDF文件inputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/零時Word/{}.docx".format('%02d'%nn)  # 要轉換的文件:已存在outputFile = r"C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/零時Word/{}.pdf".format('%02d'%nn)  # 要生成的文件:不存在# 先創建 不存在的 文件f1 = open(outputFile, 'w')f1.close()# 再轉換往PDF中寫入內容convert(inputFile, outputFile)print('----------第5步:把都有PDF合并為一個打印用PDF------------')# 多個PDF合并(CSDN博主「紅色小小螃蟹」,https://blog.csdn.net/yangcunbiao/article/details/125248205)import osfrom PyPDF2 import PdfFileMergertarget_path =  'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/零時Word'pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]pdf_lst.sort()file_merger = PdfFileMerger()for pdf in pdf_lst:print(pdf)file_merger.append(pdf)file_merger.write("C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}素材PDF.pdf".format(a))file_merger.close()# doc.Close()# print('----------第5步:刪除臨時文件夾------------')    import shutilshutil.rmtree('C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/零時Word') #遞歸刪除文件夾,即:刪除非空文件夾print('--------------6.pdf轉成圖片,1028*720,350-400zKB之間------------')import datetimeimport osimport fitz  # fitz就是pip install PyMuPDFdef pyMuPDF_fitz(pdfPath, imagePath):startTime_pdf2img = datetime.datetime.now()  # 開始時間print("imagePath=" + imagePath)pdfDoc = fitz.open(pdfPath)for pg in range(pdfDoc.pageCount):page = pdfDoc[pg]rotate = int(0)# 每個尺寸的縮放系數為1.3,這將為我們生成分辨率提高2.6的圖像。# 此處若是不做設置,默認圖片大小為:792X612, dpi=96# zoom_x = 1.33333333  # (1.33333333-->1056x816)   (2-->1584x1224)# zoom_y = 1.33333333zoom_x = 2  # (1.33333333-->1056x816)   (2-->1584x1224)zoom_y = 2       mat = fitz.Matrix(zoom_x, zoom_y).preRotate(rotate)pix = page.getPixmap(matrix=mat, alpha=False)if not os.path.exists(imagePath):  # 判斷存放圖片的文件夾是否存在os.makedirs(imagePath)  # 若圖片文件夾不存在就創建pix.writePNG(imagePath + '/' + '{}{}.png'.format(a,'%03d'% (pg+1))) # 將圖片寫入指定的文件夾內endTime_pdf2img = datetime.datetime.now()  # 結束時間print('pdf2img時間=', (endTime_pdf2img - startTime_pdf2img).seconds)if __name__ == "__main__":# 1、PDF地址pdfPath = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}素材PDF.pdf'.format(a)# 2、需要儲存圖片的目錄imagePath = r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}拼合'.format(a)pyMuPDF_fitz(pdfPath, imagePath)print('----7.把1028(720png替換成jpg-----')import osfrom PIL import Imagedirname_read= r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}拼合/'.format(a) # 注意后面的斜杠dirname_write=r'C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/臨時文件夾/'if not os.path.exists(dirname_write):os.makedirs(dirname_write)names=os.listdir(dirname_read)count=0for name in names:img=Image.open(dirname_read+name)img=img.resize((1280, 720))     # 調整圖片的尺寸可以任意調整大小,原圖16:9,可能改成1:1# img.thumbnail((1280, 720))  # 調整圖片的尺寸等比例縮小,原圖16:9,縮放后就是16:9,不能改成1:1name=name.split(".")if name[-1] == "png":name[-1] = "jpg"name = str.join(".", name)to_save_path = dirname_write + name[:-4]+'_{}'.format(zz)+'.jpg'img = img.convert('RGB')#RGBA意思是紅色,綠色,藍色,Alpha的色彩空間,Alpha指透明度。而JPG不支持透明度,所以要么丟棄Alpha,要么保存為.png文件img.save(to_save_path,"JPEG", quality=zz, optimize=True, progressive=True)# q=100,570KB  q=98 400KB q=97 352KB q=96 300-400之間  352KB q=95 280KB count+=1print(name)else:continueprint('運行完成!共轉換了 %d 張圖片' % (count))print('----第3步:讀取文件夾大小,確定范圍,并篩選最大文件夾的6張圖片的路徑,復制到人物/卡通八百-----')# # # 挑選最大KB的圖片,并復制到八百里,刪除臨時文件夾test_old=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\臨時文件夾'
test_new=r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}變小'.format(lb[wj-1])  x=len(z1)
# print(x)lj=[]
ims=os.listdir(test_old)
for im in ims:lj.append(test_old+'\\'+im)
print(lj)
# # 只要文件夾
print(len(lj))
# 文件夾數量95個# # 十個數字內部進行比較
z2=[]
for a2 in range(int(len(lj)/x)):c=lj[a2*x:a2*x+x]z2.append(c)  
# print(z2) 
#  
l_idx=[]
l_num=[]
l_path=[]
l_end=[]for f in z2:l_num.clear() l_path.clear() for retall in f:       print(retall)  # 路徑+圖片名稱 #       # print(d)  # 路徑+圖片名稱  imageSize = os.path.getsize(retall)imageSize /= 1024 # 除以1024是代表Kbe=int(round(imageSize))# print(e)if 300<=e<400:# 刪選出300-400KB的圖片,添加到列表l_num.append(e)l_path.append(retall)print(l_num)print(l_path)  # KB列表里面的最大值# 注意:如果質量70-100生成的KB不在300-400之間,會出現空值,程序中斷,所以最好把1-100都循環一次,但是這樣時間很長,36份6張 做10-90 91套需要生成3276個文件夾。大約1個小時,1.65GBvalue=max(l_num)                # KB列表里面的最大值idx=l_num.index(value)                # 最大數字雖在的索引數字# print(value,idx)# 最大KB圖片的路徑     l_end.append(l_path[idx])
print(l_end)# # # 復制到新路徑# tp=[]
# for p4 in range(len(l_end)): 
#     o=str(l_end[p4])
#     # print(o)
#     ims4=os.listdir(o)
#     # print(ims4)
#     for im4 in ims4:
#         tp.append(o+'\\'+im4)
# # print(tp)
# # # 單張圖片的路徑
# # print(len(tp)) 
# # 12張
# #    
for x in range(len(l_end)): list_old=l_end[x]    # 臨時文件夾里的路徑和圖片名稱print(list_old)# C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\人物八百list_new=test_new+'\\'+list_old[45:]print(list_new)# # #     #     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)print('----第4步:刪除臨時文件夾-----')# #       
# 刪除臨時文件夾
# if os.path.exists(test_old):
#     shutil.rmtree(test_old)# shutil.remove(dir)# # shutil.removedirs(dir)

4.1?? KB最大的單圖和六圖轉移(這是6圖和單圖樣式)


import os
import shutil
import globprint('----------第8步:把“風景變小”里面的圖片全部轉移到X、把“風景八百”里面的圖片轉移到6張一組------------')ll=['變小','八百']date=input('請輸入日期"0708"\n')bh=int(input('分組文件夾的數字,,1(卡通001套)\n'))
wj=int(input('文件夾名稱(1人物,2卡通,3寵物,4動漫,5風景,6其他)\n'))
lb=['人物','卡通','寵物','動漫','風景','其他']
print(lb[wj-1])
a=(lb[wj-1])import shutilpathone=[]
pr=r"C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}八百".format(a)# 風景變小:160張放在一起、
# 風景八百:拆成6張放在一起
# print(pr)# 過濾:只保留jpg結尾的圖片
imgs=os.listdir(pr)
for img in imgs:if img.endswith(".jpg"):pathone.append(pr+'\\'+img)
# print(pathone)
c=int(len(pathone))
print(c)# 新建文件夾
bigname='2023{}_{}素材{}號({}份)'.format(date,a,'%03d'%bh,int(c/6))# 創建多少個文件夾
# 文件名稱001 002 兩次都仙劍了5個文件夾
# list1=[]   
for t in range(1,int(len(pathone)/6)+1):# 第一次從1開始,name='{}_{}_{}'.format(date,a,'%03d'%t)# 風景_001print(name)# 文件序號確定        u='{}{}素材'.format('%02d'%wj,a)dir =pathone[t-1][0:35] +'\\'+u+'\\'+bigname+'\\'+'{}_六圖({}文件夾)'.format(str(date),str(int(c/6)))+'\\'+name+'\\'# print(dir)          # C:\Users\jg2yXRZ\OneDrive\桌面\實驗\風景_001\變小# C:\Users\jg2yXRZ\OneDrive\桌面\實驗\風景_001\# 新建拼合文件夾if not os.path.exists(dir):os.makedirs(dir)tt=pathone[(t-1)*6:(t-1)*6+6]# 0-5 5-10print(tt)for ttt in tt:print(ttt)list_old=ttt# #     print(list_old)list_new=dir#     # # 復制文件(先不要刪除)shutil.copy(list_old,list_new)# 6圖合并的單圖,內容復制到03風景素材里面的單圖
list_old="C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}變小".format(a)
print(list_old)
# #     print(list_old)
list_new="C:/Users/jg2yXRZ/OneDrive/桌面/AI商業接單/{}{}素材/{}/{}_單圖({}張樣圖)".format('%02d'%wj,lb[wj-1],bigname,date,int(c/6))
print(list_new)# # 復制文件(先不要刪除)
shutil.copytree(list_old,list_new)

5.1清空文件夾

import shutil
import os# 新建文件夾list=['人物','卡通','寵物','動漫','風景','其他']
fl=['拼合','六圖','原圖','變小','八百']
q=int(input('1刪除,2新建,3刪除并新建 \n'))lb=[]
for l in range(len(list)):# print(l)for f in range(len(fl)):# print(f)zh='{}{}'.format(list[l],fl[f])lb.append(zh)
print(lb)if q ==1:for m in range(len(lb)) :dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}'.format(lb[m])  # # 刪除所有有圖片或沒有圖片的文件夾if os.path.exists(dir):shutil.rmtree(dir)# shutil.remove(dir)# shutil.removedirs(dir)else:pass        if q ==2:for m in range(len(lb)) :dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}'.format(lb[m])  # # 新建所有空白的文件夾if not os.path.exists(dir):os.makedirs(dir)if q ==3:for m in range(len(lb)) :dir =r'C:\Users\jg2yXRZ\OneDrive\桌面\AI商業接單\{}'.format(lb[m])  # # 刪除所有有圖片或沒有圖片的文件夾if os.path.exists(dir):shutil.rmtree(dir)# shutil.remove(dir)# shutil.removedirs(dir)else:pass# # 新建所有空白的文件夾if not os.path.exists(dir):os.makedirs(dir)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/41154.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/41154.shtml
英文地址,請注明出處:http://en.pswp.cn/news/41154.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

為什么在Spring中使用@Autowired時會提示Field injection is not recommended 而@Resource不會

在使用IDEA進行開發時&#xff0c;在字段上使用Spring的依賴注入注解Autowired后會出現如下警告 Field injection is not recommended (字段注入是不被推薦的) 這個原因具體可以看看&#xff1a; 【注解使用】使用Autowired后提示&#xff1a;Field injection is not recomme…

【抖音小玩法-彈幕游戲】開發者功能測試報告提交模板

背景 字節有明確的要求&#xff0c;準入和準出更加嚴格&#xff0c;要求有明確的測試報告。格式如下&#xff1a; *本文參考字節wiki&#xff1a;開發者功能測試報告提交模板 網絡兼容性 請確認在以下網絡類型驗證過插件功能 WIFI 4G 測試機型 請羅列驗證過的雙端機型 An…

python+django+mysql高校校園外賣點餐系統--計算機畢設項目

本文的研究目標是以高校校園外賣點餐為對象&#xff0c;使其高校校園外賣點餐為目標&#xff0c;使得高校校園外賣點餐的信息化體系發展水平提高。論文的研究內容包括對個人中心、美食分類管理、用戶管理、商家管理、美食信息管理、工作人員管理、安全檢查管理、系統管理、訂單…

時序預測 | MATLAB實現基于GRU門控循環單元的時間序列預測-遞歸預測未來(多指標評價)

時序預測 | MATLAB實現基于GRU門控循環單元的時間序列預測-遞歸預測未來(多指標評價) 目錄 時序預測 | MATLAB實現基于GRU門控循環單元的時間序列預測-遞歸預測未來(多指標評價)預測結果基本介紹程序設計參考資料 預測結果 基本介紹 1.Matlab實現GRU門控循環單元時間序列預測未…

復數混頻器、零中頻架構和高級算法開發

文章里講解了關于射頻IQ調制器、零中頻架構相關的原理及技術&#xff0c;全都是干貨&#xff01;其實好多同行對軟件無線電的原理、IQ調制、鏡像抑制都是一知半解&#xff0c;知其然不知其所以然。好好研讀這篇文章&#xff0c;相信會讓你有種恍然大悟的感覺。 RF工程常被視為…

Shell學習筆記之基礎部分

Shell基礎&#xff1a; 查看操作系統支持的shell&#xff1a; [rootrhel9 ansible]# cat /etc/shells /bin/sh /bin/bash /usr/bin/sh /usr/bin/bashShell的基本元素&#xff1a; 聲明&#xff1a;聲明用哪個命令解釋器來解釋并執行當前腳本文件中的語句&#xff0c;一般寫的…

大語言模型與語義搜索;釘釘個人版啟動內測,提供多項AI服務

&#x1f989; AI新聞 &#x1f680; 釘釘個人版啟動內測&#xff0c;提供多項AI服務 摘要&#xff1a;釘釘個人版正式開始內測&#xff0c;面向小團隊、個人用戶、高校大學生等人群。該版本具有AI為核心的功能&#xff0c;包括文生文AI、文生圖AI和角色化對話等。用戶可通過…

【IEEE會議】第二屆IEEE云計算、大數據應用與軟件工程國際學術會議 (CBASE2023)

第二屆IEEE云計算、大數據應用與軟件工程國際學術會議 (CBASE2023&#xff09; 隨著大數據時代的到來&#xff0c;對數據獲取的隨時性和對計算的需求也在逐漸增長。為推動大數據時代的云計算與軟件工程的發展&#xff0c;促進該領域學術交流&#xff0c;在CBASE 2022成功舉辦的…

設計模式——經典單例

0、核心要素 // 構造、析構函數私有化&#xff08;一個進程只允許一個對象存在&#xff09; // 對象私有化、靜態化&#xff08;因為接口靜態函數&#xff09; // 對象調用接口靜態化&#xff08;因為靜態函數脫離了類對象&#xff0c;可以直接調用&#xff09; 一、懶漢 唯…

如何更好的維護自己的電腦?

我的筆記本電腦 我使用的華碩天選3是一款游戲本&#xff0c;搭載了英特爾酷睿i7-12700H處理器&#xff0c;16GB內存&#xff0c;512GB固態硬盤和NVIDIA GeForce RTX 3050顯卡。屏幕尺寸為15.6英寸&#xff0c;分辨率為2560x1440。對于日常使用和工作學習娛樂都能滿足要求。 日常…

基于docker搭建pytest自動化測試環境(docker+pytest+jenkins+allure)

pytest搭建自動化測試環境&#xff08;dockerpytestjenkinsallure&#xff09; 這里我以ubuntu18為例 如果有docker環境&#xff0c;可以直接拉取我打包好的鏡像docker pull ziyigun/jenkins:v1.0 1 搭建Docker 1.1 安裝docker # 配置docker安裝環境 sudo apt-get install ap…

潤和軟件HopeStage操作系統正式上架阿里云、華為云、騰訊云商店

近日&#xff0c;潤和軟件HopeStage操作系統正式上架阿里云、華為云、騰訊云商店。 隨著科技的發展&#xff0c;云服務成為現代社會信息和資訊的交換、共享、存儲、檢索、應用等重要方式。阿里云、華為云、騰訊云作為我國云服務市場三巨頭&#xff0c;其云商店產品全面覆蓋云、…

Nvidia Jetson 編解碼開發(1)介紹

前言 由于項目需要,需要開發Jetson平臺的硬件編解碼; 優化CPU帶寬,后續主要以介紹硬件編解碼為主 1.Jetson各平臺編解碼性能說明 如下是拿了Jetson nano/tx2/Xavier等幾個平臺做對比; 這里說明的編解碼性能主要是對硬件來說的 2. 編解碼實現說明 2.1 軟件編解碼 優點:…

Idea中隱藏指定文件或指定類型文件

Setting ->Editor ->Code Style->File Types → Ignored Files and Folders輸入要隱藏的文件名&#xff0c;支持*號通配符回車確認添加

Windows權限維持—自啟動映像劫持粘滯鍵輔助屏保后門WinLogon

Windows權限維持—自啟動&映像劫持&粘滯鍵&輔助屏保后門&WinLogon 1. 前置2. 自啟動2.1. 路徑加載2.1.1. 放置文件2.1.2. 重啟主機 2.2. 服務加載2.2.1. 創建服務2.2.2. 查看服務2.2.3. 重啟主機 2.3. 注冊表加載2.3.1. 添加啟動項2.3.2. 查看注冊表2.3.3. 重啟…

YOLOv5基礎知識入門(7)— NMS(非極大值抑制)原理解析

前言&#xff1a;Hello大家好&#xff0c;我是小哥談。NMS是指非極大值抑制&#xff08;non maximum suppression&#xff09;&#xff0c;它是一種常用于物體檢測任務的算法。在物體檢測中&#xff0c;通常會有多個預測框&#xff08;bounding box&#xff09;被提議出來&…

機器學習深度學習——transformer(機器翻譯的再實現)

&#x1f468;?&#x1f393;作者簡介&#xff1a;一位即將上大四&#xff0c;正專攻機器學習的保研er &#x1f30c;上期文章&#xff1a;機器學習&&深度學習——自注意力和位置編碼&#xff08;數學推導代碼實現&#xff09; &#x1f4da;訂閱專欄&#xff1a;機器…

【論文閱讀】 Model Sparsity Can Simplify Machine Unlearning

Model Sparsity Can Simplify Machine Unlearning 背景主要內容Contribution Ⅰ&#xff1a;對Machine Unlearning的一個全面的理解Contribution Ⅱ&#xff1a;說明model sparsity對Machine Unlearning的好處Pruning方法的選擇sparse-aware的unlearning framework Experiments…

JetBrains IDE遠程開發功能可供GitHub用戶使用

JetBrains與GitHub去年已達成合作&#xff0c;提供GitHub Codespaces 與 JetBrains Gateway 之間的集成。 GitHub Codespaces允許用戶創建安全、可配置、專屬的云端開發環境&#xff0c;此集成意味著您可以通過JetBrains Gateway使用在 GitHub Codespaces 中運行喜歡的IDE進行…

VScode搭建Opencv(C++開發環境)

VScode配置Opencv 一、 軟件版本二 、下載軟件2.1 MinGw下載2.2 Cmake下載2.3 Opencv下載 三、編譯3.1 cmake-gui3.2 make3.3 install 四、 VScode配置4.1 launch.json4.2 c_cpp_properties.json4.3 tasks.json 五、測試 一、 軟件版本 cmake :cmake-3.27.2-windows-x86_64 Mi…