2
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?

More than 3 years have passed since last update.

Python 画像を分割し横に並べる

Last updated at Posted at 2020-03-08

背景

数独アプリを作成しています。
その途中のプロセスで何となく、画像を分割して、横に並べてみたいなっておもい、ググりながら作成しました。
誰かの参考になると幸いです。

##サンプルコード

split_img_and_layout_Horizontally.py
import numpy as np
import cv2

# 入力画像を読み込み
img = cv2.imread("sudoku_wiki.png")
#wiki https://en.wikipedia.org/wiki/Sudoku

#分割サイズを定義
vertical_split = 9
horizonal_split = 9

#リサイズを指定
size = (vertical_split * 200, horizonal_split * 200)
img = cv2.resize(img, size)

#リストの初期化
split_img = []

#縦と横に分割
[split_img.extend(np.hsplit(img, horizonal_split)) for img in np.vsplit(img, vertical_split)]

#分割した画像群を横に配列
img_list = [split_img[i] for i in range(len(split_img))]
merge_img = cv2.hconcat(img_list)

#画像を保存
cv2.imwrite('merge_img.jpg', merge_img)

##実行結果

対象画像:sudoku_wiki.png

sudoku_wiki.png

実行結果:merge_img.jpg
見づらいので、拡大してみてください。。。
merge_img.jpg

更なる改善点

・数字との境界線を消すと見やすくなる
→直線検出をし、白塗り

・数字の画像からで文字列化
→MNIST(機械学習)を取り入れる

それぞれ取り組んだんですが、あまり良くない精度だったので、
改善でき次第、載せられたらいいかな。

2
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
2
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?