一、画像階調アルゴリズム
10513 ワード
文書ディレクトリ階調アルゴリズム概要 1.Opencv階調実現 2.階調アルゴリズム手動実装 階調アルゴリズムの概要
コンピュータ分野では、グレースケールデジタル画像は、画素ごとに1つのサンプリング色しかない画像である.このような画像は、理論的には、このサンプリングは、任意の色の異なる深さ、さらには異なる輝度の異なる色であってもよいが、最も暗い黒から最も明るい白までの階調として表示されることが多い.階調画像は白黒画像とは異なり、コンピュータ画像の分野では白黒画像は白黒の2色しかなく、階調画像は黒と白の間に多くのレベルの色深さがある.
一.Opencv階調実装読取時実現: リアルタイムで階調 に移行する.
二.階調アルゴリズム手動実装階調アルゴリズム有名な心理学公式: Gray = R0.299 + G0.587 + B*0.114
心理学の公式に基づいてpythonは次のコードを生成します.
アルゴリズム最適化提案:b 0.114 + g0.587 + r0.299は、小数1000を先に加算し、合計を1000で除算して精度損失を回避することができます.非心理学公式:
ブロガーが開発したサードパーティCSDNクライアント.体験は素晴らしいですよ、早くダウンロードを体験しましょう.
コンピュータ分野では、グレースケールデジタル画像は、画素ごとに1つのサンプリング色しかない画像である.このような画像は、理論的には、このサンプリングは、任意の色の異なる深さ、さらには異なる輝度の異なる色であってもよいが、最も暗い黒から最も明るい白までの階調として表示されることが多い.階調画像は白黒画像とは異なり、コンピュータ画像の分野では白黒画像は白黒の2色しかなく、階調画像は黒と白の間に多くのレベルの色深さがある.
一.Opencv階調実装
import cv2
# picture type 0:gray 1 color
img = cv2.imread(" .jpg", 0)
cv2.imshow("image", img)
cv2.waitKey(0)
import cv2
img1 = cv2.imread("image0.jpg", 1)
# , bgr
dst = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
cv2.imshow("dst", dst)
cv2.waitKey(0)
二.階調アルゴリズム手動実装
心理学の公式に基づいてpythonは次のコードを生成します.
import cv2
import numpy as np
img = cv2.imread("image0.jpg", 1)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
mode = imgInfo[2]
dst = np.zeros((height, width, 3), np.uint8)
for i in range(0, height):
for j in range(0, width):
(b, g, r) = img[i, j]
b = int(b)
g = int(g)
r = int(r)
gray = b*0.114 + g*0.587 + r*0.299
dst[i, j] = np.uint8(gray)
cv2.imshow("dst", dst)
cv2.waitKey(0)
アルゴリズム最適化提案:b 0.114 + g0.587 + r0.299は、小数1000を先に加算し、合計を1000で除算して精度損失を回避することができます.
import cv2
import numpy as np
img = cv2.imread("image0.jpg", 1)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
mode = imgInfo[2]
dst = np.zeros((height, width, 3), np.uint8)
for i in range(0, height):
for j in range(0, width):
(b, g, r) = img[i, j]
gray = (int(b) + int(g) + int(r)) / 3 #(r+g+b)/3
dst[i, j] = np.uint8(gray)
cv2.imshow("dst", dst)
cv2.waitKey(0)
ブロガーが開発したサードパーティCSDNクライアント.体験は素晴らしいですよ、早くダウンロードを体験しましょう.