最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python?opencv應(yīng)用實現(xiàn)圖片切分操作示例

 更新時間:2022年06月06日 14:42:26   作者:jiangwei0512  
這篇文章主要為大家介紹了Python?opencv應(yīng)用實現(xiàn)圖片切分的操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

說明

之前下載來zip包的漫畫,里面的圖片都是兩張一起的:

但是某些漫畫查看軟件不支持自動分屏,看起來會比較不舒服,所以只能自己動手來切分。

操作說明

Python有不少的庫支持圖片操作,其中比較著名的一個是OpenCV。

OpenCV是一個跨平臺的計算機視覺庫,Python下有它的接口實現(xiàn)。

Python默認不帶OpenCV,所以需要先用pip下載:

OpenCV功能強大,這里用來做圖片的切分其實是牛刀小試。

關(guān)于OpenCV的功能,這里不多介紹,有興趣的可以找其它的資料。

為了在代碼中使用OpenCV,首先需要import相關(guān)的庫:

import cv2 # Should be install independently.

然后是讀取圖片:

img1 = cv2.imread(filename)

然后做切割:

    # shape[0]:height shape[1]:width shape[2]:channel
    # img[y0:y1, x0:x1] 0=(left up) 1=(right low)
    slice1 = img[0:height, width/2:width]

這里實際上就是指定圖片框體,需要的兩個值是左上角和右下角坐標,只是對應(yīng)的方式有些詭異,不知道為什么要這樣對應(yīng)。

然后是回寫圖片:

    cv2.imwrite(getname(index1), slice1, [int(cv2.IMWRITE_PNG_COMPRESSION), 1])

此外,為了保證圖片不會太大,還可以做些壓縮:

    img = cv2.resize(img1, (0, 0), fx=compressratio, fy=compressratio, interpolation=cv2.INTER_NEAREST)

以上就是涉及到圖片的基本代碼。

代碼

下面是全部的代碼,將它保存到py文件中,然后與圖片放到同一個目錄,雙擊py文件就可以執(zhí)行,并進行圖片切分:

#!/usr/bin/env python
# ---------------------------------------------------------------------------------
# coding=utf-8
# @File    : sliceImage.py
# @Author  : Jiangwei
# @Date    : 2020/4/18
# @Desc    : Slice images.
# @History :
#     Date       Author      Description
#   20200418    Jiangwei     Created.
# @Warning:
#   Tested in Python 2.7.
# ---------------------------------------------------------------------------------
import os
import sys
import cv2  # Should be install independently.
todir = "tmp"
exts  = ['.jpg', '.JPG', '.png', '.PNG']
compressratio = 0.75
def listimage(adir):
    '''
    adir    : The directory name.
    '''
    list = []
    for i in os.listdir(adir):
        if os.path.splitext(i)[1] in exts:
            list.append(os.path.join(adir, i))
    return list
def getname(index):
    page = "Image%03d.png" % index
    return os.getcwd() + "\\" + todir + "\\" + page
def doslice(filename, index1, index2):
    img1 = cv2.imread(filename)
    img = cv2.resize(img1, (0, 0), fx=compressratio, fy=compressratio, interpolation=cv2.INTER_NEAREST)
    height,width = img.shape[0:2]
    # shape[0]:height shape[1]:width shape[2]:channel
    # img[y0:y1, x0:x1] 0=(left up) 1=(right low)
    slice1 = img[0:height, width/2:width]
    cv2.imwrite(getname(index1), slice1, [int(cv2.IMWRITE_PNG_COMPRESSION), 1])
    print getname(index1)
    slice2 = img[0:height, 0:width/2]
    cv2.imwrite(getname(index2), slice2, [int(cv2.IMWRITE_PNG_COMPRESSION), 1])
    print getname(index2)
    return
if __name__ == "__main__":
    '''
    Slice images.
    '''
    # Temperature directory for sliceped images.
    if not os.path.exists(todir):
        os.mkdir(todir)
    # Transverse all files and do the slice.
    imagelist = listimage (os.getcwd())
    index = 1
    for i in imagelist:
        print "Processing %s" % i
        doslice(i, index, index + 1)
        index += 2

切分之后的文件會放到新創(chuàng)建的tmp目錄下。

切換效果

下面是切換之后的效果:

代碼寫得不怎么樣,不過能夠用......

以上就是Python opencv應(yīng)用實現(xiàn)圖片切分操作示例的詳細內(nèi)容,更多關(guān)于Python opencv圖片切分的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • PyQt5+requests實現(xiàn)車票查詢工具

    PyQt5+requests實現(xiàn)車票查詢工具

    這篇文章主要為大家詳細介紹了PyQt5+requests實現(xiàn)車票查詢工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 七個Python必備的GUI庫

    七個Python必備的GUI庫

    這篇文章主要介紹了七個Python必備的GUI庫,幫助大家更好的理解和學(xué)習(xí)使用python制作gui程序,感興趣的朋友可以了解下
    2021-04-04
  • Python異步編程中asyncio.gather的并發(fā)控制詳解

    Python異步編程中asyncio.gather的并發(fā)控制詳解

    在Python異步編程生態(tài)中,asyncio.gather是并發(fā)任務(wù)調(diào)度的核心工具,本文將通過實際場景和代碼示例,展示如何結(jié)合信號量機制實現(xiàn)精準并發(fā)控制,希望對大家有所幫助
    2025-03-03
  • 解決多個@Scheduled定時任務(wù)執(zhí)行時個別不執(zhí)行問題

    解決多個@Scheduled定時任務(wù)執(zhí)行時個別不執(zhí)行問題

    這篇文章主要介紹了解決多個@Scheduled定時任務(wù)執(zhí)行時個別不執(zhí)行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Pygame Event事件模塊的詳細示例

    Pygame Event事件模塊的詳細示例

    事件是Pygame的重要模塊之一,比如鼠標點擊、鍵盤敲擊、游戲窗口移動、調(diào)整窗口大小、觸發(fā)特定的情節(jié)、退出游戲等等,本文就詳細的介紹一下具體用法,感興趣的可以了解一下
    2021-11-11
  • Python繪制心形曲線完整代碼實現(xiàn)

    Python繪制心形曲線完整代碼實現(xiàn)

    這篇文章主要介紹了Python繪制心形曲線的相關(guān)資料,通過numpy和matplotlib庫計算坐標并繪圖,代碼包含導(dǎo)入庫、定義函數(shù)、生成參數(shù)、計算坐標、繪圖和顯示圖形等步驟,展示了數(shù)學(xué)與編程的結(jié)合美感,需要的朋友可以參考下
    2024-10-10
  • Python的scikit-image模塊實例講解

    Python的scikit-image模塊實例講解

    在本篇文章里小編給大家整理了一篇關(guān)于Python的scikit-image模塊實例講解內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-12-12
  • python?中的np.zeros()和np.ones()函數(shù)詳解

    python?中的np.zeros()和np.ones()函數(shù)詳解

    這篇文章主要介紹了python?中的np.zeros()和np.ones()函數(shù),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • python中賦值語句的特點和形式

    python中賦值語句的特點和形式

    這篇文章主要介紹了python中賦值語句的特點和形式,文中介紹了多目標賦值的共享引用問題,多目標賦值其實是多個目標對同一個內(nèi)存空間的引用,這里要分兩種情況,當被引用對象是不可變對象時則不存在問題,感興趣的朋友跟隨小編一起看看吧
    2023-12-12
  • 基于Python實現(xiàn)天天酷跑功能

    基于Python實現(xiàn)天天酷跑功能

    這篇文章主要介紹了基于Python實現(xiàn)天天酷跑功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01

最新評論

海南省| 静乐县| 桐梓县| 同江市| 丰镇市| 永新县| 台州市| 平乐县| 武穴市| 滕州市| 斗六市| 大英县| 沐川县| 三台县| 文化| 沂南县| 天津市| 厦门市| 琼中| 东乌珠穆沁旗| 苍梧县| 和平县| 马尔康县| 尚义县| 玉树县| 盐池县| 凯里市| 边坝县| 舞钢市| 陆川县| 铜陵市| 桐柏县| 靖远县| 安化县| 金湖县| 苏州市| 乌拉特前旗| 漯河市| 方城县| 鄱阳县| 崇明县|