0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Rembgでレシート画像を切り抜き

Last updated at Posted at 2023-01-25

目的

  • レシートと背景が写った写真からレシートをくりぬきたい
  • Rembgってすごいらしい
  • なんか画像処理っぽいことしたい

前回のあらすじ

今回はrembgをやってみたいと思いました。原理とか理論とかは参考文献を参照してください。
最近のDeepleaningはすごいですね。恐ろしく簡単に背景消せるんだ、と思いました。

環境

  • Windows11 Home
  • VSCode
  • Python3.10
  • pip
    rembg

本編

参考:

Rembgをpipでインストールします

pip install rembg

プログラムを作成します

基本的に1行で切り抜きしてくれます。めちゃくちゃ楽。

import cv2
import os
import glob
import rembg

def save(name, image, format='.jpg'):
    cv2.imwrite( name + format, image)

def doTrim(filename):
    img = cv2.imread(DATA_DIR + filename)
    output = rembg.remove(img)
    save(filename+'1', output)

DATA_DIR='data/'

for p in glob.glob(DATA_DIR+'*.jpg'):
    if os.path.isfile(p):
        target=os.path.basename(p)
        print(target)
        doTrim(target)

変換結果

前回うまくいかなかったものもあっさり良い感じに切り抜けました。
(こんなに簡単にできてしまうと逆につまらない感じ。。。)
元画像
20220303_084409.jpg
変換後
20220303_084409.jpg1.jpg

元画像2(前回失敗した)
20191015_134133.jpg

変換後
20191015_134133.jpg1.jpg

終わりに

今回GPUを使用しないで実行しましたが、1枚当たり3秒くらいの処理時間でした。
GPU使うともっと速くなるかも。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?