国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Python 無損放大圖片】——支持JPG/PNG 可將圖片無損放大上萬像素

這篇具有很好參考價值的文章主要介紹了【Python 無損放大圖片】——支持JPG/PNG 可將圖片無損放大上萬像素。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

點個贊留個關注吧?。?/p>

今天做一個超簡單的無損放大圖片的程序,原理很簡單

JPG原理:讀取原圖片的像素點的RGB顏色值并保存到文件內,然后將原圖進行翻倍放大,在放大的圖上進行繪制,繪制一個像素的翻倍大小,一行一行的繪制,然后保存并刪掉顏色文件

PNG原理:因為有部分PNG是透明的,所以以RGBA顏色值進行保存并繪制,先生成顏色文件和模板圖片,模板圖片是8UY88767.png 這個模板圖片是原圖的翻倍大小,是臨時的模板,然后生成完畢后再讀取顏色文件,在模板圖片上進行重組并生成最終的圖片,也就是無損放大后的圖片

?別忘了留個贊??

這個是將原圖無損放大8倍的效果,JPG格式

【Python 無損放大圖片】——支持JPG/PNG 可將圖片無損放大上萬像素

這個是將原圖無損放大8倍的效果,PNG格式

【Python 無損放大圖片】——支持JPG/PNG 可將圖片無損放大上萬像素

?

無損放大JPG源代碼:

#!/usr/bin/python
# -*- coding:utf-8 -*-
import cv2
from PIL import Image
import time
import shutil
import os



DATA = input('請輸入要放大的圖片名稱(JPG文件名稱必須使用數(shù)字或英文):')
Multiple = int(input('請輸入要放大的圖片的倍數(shù)(必須大于1):'))
DATA_file = input('請輸入要圖片要保存的圖片名稱:')
print('開始放大....')
os.mkdir('DATA') # 新建
#讀取圖片  要放大的圖片
src = cv2.imread(DATA)
# 用來讀取原圖片的像素RGB顏色值  先讀取圖片文件
IMG = Image.open(DATA)
#獲取圖像大小  獲取圖像的大寫XY也是顛倒過來的
y, x = src.shape[:2]

# 臨時裝飾器
List_elements = []
for YY in range(y):   # 獲取圖片的Y軸有多少像素  也相當于長度
    '''意思:循環(huán)讀取圖片的每一個像素點的RGB值 并以列表的形式存儲起來'''
    if int(len(List_elements)) >= 2:   # 每次循環(huán)完畢后要將列表的值恢復無
        List_elements = []
    for XX in range(x):  # 獲取圖片的X軸有多少像素   也相當于寬度
        # IMG.getpixel((a, aa))  用來獲取圖片某位置的RGB像素值  提示:獲取的值 對應 BGR  是RGB反過來的
        List_elements = List_elements + [list(IMG.getpixel((XX, YY)))]  # 讀取某坐標的像素值并將元組為列表進行存儲
    NAME = open(f"DATA/{YY}", 'w')  # 存儲
    NAME.write(str(List_elements))  # 將列表轉為字符串保存
    NAME.close()

time.sleep(2)  # 延遲一下 ,防止文件加載過慢讀取錯誤

# 圖像縮放  要將原圖進行翻倍放大  然后在原圖的基礎上進行繪圖
result = cv2.resize(src, (x*Multiple,y*Multiple))

for RGB_DATA_Y in range(y):  # 循環(huán)所有文件 Y有多少像素 就有多少個RGB顏色文件
    '''循環(huán)讀取剛剛存儲的RGB顏色文件 并循環(huán)進行繪制 以倍數(shù)進行繪圖 確保無損放大'''
    NAME_ = eval(open(f'DATA/{RGB_DATA_Y}', 'r', encoding='utf-8').read())  # 讀取文件并轉為列表
    for RGB_DATA_X in range(len(NAME_)):  # 獲取 文件內有多少個子列表
        '''
        因為通過getpixel 獲取出來的顏色是反過來的 RGB 也就是 BGR  
        在顏色文件內的數(shù)值也是反過來的,所以在這里讀取的時候要將其顛倒一下,反向轉換一下
        '''
        _DATA = NAME_[RGB_DATA_X]
        _DATA.reverse()

        '''
        當前這個模塊是核心模塊 主要是用來讀取并繪制出原圖的倍數(shù) 
        原理:
        result[1,1] = [255,255,255]    填充 圖片的第一個像素為白色   [255,255,255] 是RGB的白色顏色數(shù)值
        result[0:2,0:4] = [255,255,255]      填充圖片 X軸從0像素到2像素為白色  Y軸從0像素到4像素為白色  
        '''
        try:
            result[RGB_DATA_Y*Multiple:RGB_DATA_Y*Multiple+Multiple,RGB_DATA_X*Multiple:RGB_DATA_X*Multiple+Multiple] = _DATA
        except:pass
# 寫入保存圖像
cv2.imwrite(DATA_file, result)
print('完成....')
try:
    shutil.rmtree("DATA") # 刪除文件夾和文件
except:pass

無損放大PNG源代碼:文章來源地址http://www.zghlxwxcb.cn/news/detail-508890.html

#!/usr/bin/python
# -*- coding:utf-8 -*-
import cv2
from PIL import Image
import time
import shutil
import os



DATA = input('請輸入要放大的圖片名稱(PNG文件名稱必須使用數(shù)字或英文):')
Multiple = int(input('請輸入要放大的圖片的倍數(shù)(必須大于1):'))
DATA_file = input('請輸入要圖片要保存的圖片名稱:')
print('開始放大....')
os.mkdir('DATA') # 新建

#讀取圖片  要放大的圖片
src = cv2.imread(DATA)
# 用來讀取原圖片的像素RGB顏色值  先讀取圖片文件
IMG = Image.open(DATA)
#獲取圖像大小  獲取圖像的大寫XY也是顛倒過來的
y, x = src.shape[:2]

# 模板
# 圖像縮放  要將原圖進行翻倍放大  然后在原圖的基礎上進行繪圖
result = cv2.resize(src, (x*Multiple,y*Multiple))
# 寫入保存圖像 - 模板圖片不用管
cv2.imwrite('8UY88767.png', result)



# 臨時裝飾器
List_elements = []
# 存儲文件的個數(shù) 后期讀取方便,不會錯讀取
Number_documents = 0

for YY in range(y):   # 獲取圖片的Y軸有多少像素  也相當于長度
    '''意思:循環(huán)讀取圖片的每一個像素點的RGBA值 并以列表的形式存儲起來'''
    if int(len(List_elements)) >= 2:   # 每次循環(huán)完畢后要將列表的值恢復無
        List_elements = []
    for XX in range(x):  # 獲取圖片的X軸有多少像素   也相當于寬度
        # IMG.getpixel((a, aa))  用來獲取圖片某位置的RGBA像素值
        List_elements = List_elements + [IMG.getpixel((XX, YY))]*Multiple   # 讀取某坐標的像素值并將元組為列表進行存儲   Multiple是倍數(shù)
    for a in range(Multiple):    # Multiple是倍數(shù)  如果是2倍 則生成兩個同樣的顏色文件   在后期進行單行輸出多次 確保以像素點進行放大
        NAME = open(f"DATA/{Number_documents}", 'w')  # 存儲
        NAME.write(str(List_elements))  # 將列表轉為字符串保存
        NAME.close()
        Number_documents = Number_documents + 1

time.sleep(1)   # 延遲一下 ,防止文件加載過慢讀取錯誤

DATA_ = list()  # 定義需要處理的數(shù)據列表
for a in range(Number_documents):
    NAME = open(f"DATA/{a}", 'r').read()  # 讀取顏色文件
    NAME = list(eval(NAME))   # 將顏色文件轉換為列表
    for aa in range(len(NAME)):  # 循環(huán)讀取列表的顏色值
        DATA_.append(NAME[aa])    # 將顏色值保存到數(shù)據列表

# 打開寫入模板圖片
IMG_2 = Image.open('8UY88767.png')
# 轉化為RGBA
RGBA_IMG = IMG_2.convert("RGBA")
RGBA_IMG.putdata(DATA_)  # 寫入圖片
RGBA_IMG.save(DATA_file, "PNG")  # 保存圖片
print('完成....')
try:
    shutil.rmtree("DATA") # 刪除文件夾和文件
except:pass
try:
    os.remove("8UY88767.png") # 刪除文件
except:pass

到了這里,關于【Python 無損放大圖片】——支持JPG/PNG 可將圖片無損放大上萬像素的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Java將JPG/PNG圖片轉換為WEBP格式,以及WEBP轉換成JPG/PNG格式

    越來越多的網站采用了webp格式的圖片,webp占用空間小,傳送更快,畫質不降低。經常會遇到圖片格式轉換的需求,我們可以借助第三方的包,通過Java實現(xiàn)來PG/PNG圖片轉換為WEBP格式,以及WEBP轉換成JPG/PNG格式。 1.maven項目依賴 在pom.xml加入下面的內容 2.代碼分享

    2024年02月08日
    瀏覽(24)
  • 如何才能把圖片無損放大?這幾個無損放大的方法分享給你們

    如何才能把圖片無損放大?這幾個無損放大的方法分享給你們

    在互聯(lián)網的浩瀚海洋里,我們常常迷失在繁星般的圖片之中,尋找那一款能映照出我們內心的頭像。無論是渴望在社交媒體上熠熠生輝,還是在游戲世界中塑造獨一無二的形象,一個與我們心靈相通的頭像總能帶給我們難以言喻的喜悅與滿足。然而,下載后卻往往發(fā)現(xiàn)這些圖

    2024年01月16日
    瀏覽(29)
  • arcgis批量導出圖片(JPG、BMP、PNG)

    arcgis批量導出圖片(JPG、BMP、PNG)

    ARCGIS自動批量輸出圖片(JPG、BMP、PNG) 批量輸出圖片工具: 免費下載鏈接: https://pan.baidu.com/s/1gVfTLTxQCQ6uiz1mmtNsNA?pwd=8j5n 提取碼: 8j5n 批量快速導出圖片(JPG、BMP、PNG ) ,每張圖都會獨立顯示本圖斑的范圍線,不會附帶其他圖斑范圍線哦,整潔美觀!??! 哦耶~~從此,再也不用

    2024年02月09日
    瀏覽(16)
  • png的圖片四通道,jpg為三通道

    輸出: (853, 1280, 3) (853, 1280, 4) cv2.imread() 用于讀取圖片文件 imread函數(shù)有兩個參數(shù),第一個參數(shù)是圖片路徑,第二個參數(shù)表示讀取圖片的形式,有三種: cv2.IMREAD_COLOR :加載彩色圖片,這個是默認參數(shù),可以直接寫1。 cv2.IMREAD_GRAYSCALE :以灰度模式加載圖片,可以直接寫0。 cv

    2024年02月04日
    瀏覽(21)
  • webpack處理圖片資源(jpeg,jpg,png等)

    webpack處理圖片資源(jpeg,jpg,png等)

    在webpack5以前,我們處理圖片資源通過 file-loader 和 url-loader 進行處理 現(xiàn)在 Webpack5 已經將兩個 Loader 功能 內置 到 Webpack 里了,我們只需要簡單配置即可處理圖片資源 webpack.config.js配置 完整代碼如下: 添加圖片資源 使用圖片資源 執(zhí)行打包命令 npx webpack 效果如下: 可以看到背

    2024年02月08日
    瀏覽(29)
  • ffmpeg 將視頻幀轉換成jpg、png等圖片

    有時播放實時流的時候有截圖的需求,需要將解碼出來的圖片保存本地或上傳服務器,這時就需要將avframe中的數(shù)據編碼成png、jpg等格式的圖片,我們使用ffmpeg的相關編碼器就可以實現(xiàn)功能。 首先需要查找圖片編碼器,比如jpg為AV_CODEC_ID_MJPEG,png為AV_CODEC_ID_PNG 示例代碼: 有了

    2024年02月02日
    瀏覽(22)
  • C# 使用Bitmap 將byte[] 轉成.jpg/.png/gif等圖片

    在 C# 中,你可以使用 System.Drawing 命名空間中的 Bitmap 類來將 byte[] 轉換為 .jpg 圖片。以下是一個示例代碼: 在上面的示例中,GetImageBytes 方法是一個用于獲取圖片的 byte[] 數(shù)據的示例方法。你需要根據實際情況自行實現(xiàn)該方法,從文件、網絡等地方讀取圖片數(shù)據,并返回 byt

    2024年01月19日
    瀏覽(20)
  • 怎么在電腦上把jpg改成png?批量圖片格式轉換器分享推薦

    怎么在電腦上把jpg改成png?批量圖片格式轉換器分享推薦

    美工在處理圖片時,經常使用png格式圖片,所以就會有用到格式轉換器(https://www.yasuotu.com/geshi),尤其是在需要處理批量圖片的時候,今天介紹的這款批量圖片格式轉換器,可以在線操作,打開瀏覽器就能完成png格式轉換,非常方便,一起來看一下吧。 使用瀏覽器搜索【壓

    2023年04月24日
    瀏覽(90)
  • Stable Diffusion放大器 StableSR超清無損放大圖片,最大呈現(xiàn)出豐富的細節(jié)!

    Stable Diffusion放大器 StableSR超清無損放大圖片,最大呈現(xiàn)出豐富的細節(jié)!

    之前介紹了放大腳本Ultimate SD upscale 但是有一種極其重要的圖像放大算法,名為stableSR。 今天,我們必須單獨為大家介紹一下它。 這個算法不僅可以放大由stable diffusion生成的圖像,即使你從網上隨便下載一張圖片,也能進行放大。 效果非常驚人。廢話不多說,直接開始。 先

    2024年03月27日
    瀏覽(28)
  • Java給文件加水印,支持.pptx,.doc,.docx,.xls,.xlsx,.pdf,.png,.jpg。

    office 相關格式文檔的加密主要使用微軟提供的Spire.Office for Java ,free部分有針對性每個類型的API說明和示例,請自行參考以下鏈接。下面也會附上我在項目中的實際工具類。 Spire.Office for Java | 專業(yè)的 Java Office 套件 | 創(chuàng)建、修改、轉換、打印 Word/PowerPoint/PDF 文檔 我的策略是

    2024年02月12日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包