91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python基于opencv的圖像壓縮算法實例分析

發布時間:2020-08-25 23:55:41 來源:腳本之家 閱讀:473 作者:開心果汁 欄目:開發技術

本文實例講述了Python基于opencv的圖像壓縮算法。分享給大家供大家參考,具體如下:

插值方法:

CV_INTER_NN - 最近鄰插值,
CV_INTER_LINEAR - 雙線性插值 (缺省使用)
CV_INTER_AREA - 使用象素關系重采樣。當圖像縮小時候,該方法可以避免波紋出現。當圖像放大時,類似于 CV_INTER_NN 方法..
CV_INTER_CUBIC - 立方插值.

函數 cvResize 將圖像 src 改變尺寸得到與 dst 同樣大小。若設定 ROI,函數將按常規支持 ROI.

程序1:圖像壓縮(第一版)

# coding=utf-8
import time
time1 = time.time()
import cv2
image=cv2.imread("c:/1.jpg")
res = cv2.resize(image, (1280,960), interpolation=cv2.INTER_AREA)
# cv2.imshow('image', image)
# cv2.imshow('resize', res)
# cv2.waitKey(0)
# cv2.destroyAllWindows()
cv2.imwrite("C:/5.jpg",res)
time2=time.time()
print u'總共耗時:' + str(time2 - time1) + 's'

4.19M—377k 壓縮了11倍

程序2:圖像壓縮(第二版)

#-*-coding:utf-8-*-
#############設置編碼################
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
###################導入計算機視覺庫opencv和圖像處理庫PIL####################
from PIL import Image
from PIL import ImageEnhance
from PIL import ImageFilter
import cv2
import time
time1 = time.time()
####################讀入圖像###############################
image=cv2.imread("c:/pic//0.jpg")
####################雙三次插值#############################
res = cv2.resize(image, (1280,960), interpolation=cv2.INTER_AREA)
####################寫入圖像########################
cv2.imwrite("C:/pic/101.jpg",res)
###########################圖像對比度增強##################
imgE = Image.open("c:/pic/101.jpg")
imgEH = ImageEnhance.Contrast(imgE)
img1=imgEH.enhance(2.8)
########################圖像轉換為灰度圖###############
gray = img1.convert("L")
gray.save("C:/pic/3.jpg")
##########################圖像增強###########################
# 創建濾波器,使用不同的卷積核
gary2=gray.filter(ImageFilter.DETAIL)
gary2.save("C:/pic/2.jpg")
#############################圖像點運算#################
gary3=gary2.point(lambda i:i*0.9)
gary3.save("C:/pic/4.jpg")
# img1.show("new_picture")
time2=time.time()
print u'總共耗時:' + str(time2 - time1) + 's'

4.17M–>290kb

程序3:函數版本

#-*-coding:utf-8-*-
#############設置編碼################
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
############導入計算機視覺庫opencv和圖像處理庫PIL####################
from PIL import Image
from PIL import ImageEnhance
from PIL import ImageFilter
import cv2
import time
time1 = time.time()
########################自定義圖像壓縮函數############################
def img_zip(path,filename1,filename2):
  image = cv2.imread(path+filename1)
  res = cv2.resize(image, (1280, 960), interpolation=cv2.INTER_AREA)
  cv2.imwrite(path+filename2, res)
  imgE = Image.open(path+filename2)
  imgEH = ImageEnhance.Contrast(imgE)
  img1 = imgEH.enhance(2.8)
  gray1 = img1.convert("L")
  gary2 = gray1.filter(ImageFilter.DETAIL)
  gary3 = gary2.point(lambda i: i * 0.9)
  gary3.save(path+filename2)
################################主函數##################################
if __name__ == '__main__':
  path=u"c:/pic/"
  filename1="0.jpg"
  filename2="1.jpg"
  img_zip(path,filename1,filename2)
  time2 = time.time()
  print u'總共耗時:' + str(time2 - time1) + 's'

更多關于Python相關內容可查看本站專題:《Python數學運算技巧總結》、《Python圖片操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

卫辉市| 陈巴尔虎旗| 洛隆县| 通榆县| 两当县| 寻乌县| 秭归县| 萍乡市| 紫金县| 夏邑县| 宁阳县| 磐石市| 和平区| 宁南县| 鹰潭市| 元氏县| 琼海市| 洛阳市| 临汾市| 碌曲县| 郯城县| 长阳| 开江县| 鄂州市| 西城区| 甘德县| 枝江市| 寿阳县| 兴安县| 宁强县| 泸水县| 灵台县| 兴隆县| 屯留县| 遂昌县| 缙云县| 三门县| 建瓯市| 卫辉市| 五指山市| 琼结县|