3

というわけで...本「Practical Computer Vision with SimpleCV , Chapter 5」を読んでください -ここのオンライン チュートリアルと同じ例です。黄色の車の平均色の値が非常に異なっていたので、サンプル コードに戻り、コメントを挿入し、各段階で画像を表示するための要素を追加しました (そして、きれいに閉じました)。

from SimpleCV import Image
import time

# Load images.
car_in_lot = Image("parking-car.png")
car_not_in_lot = Image("parking-no-car.png")

# Crop image to region-of-interest.
car = car_in_lot.crop(470,200,200,200)
car.show()
time.sleep(5)
car.show().quit()

# Create greyscale image showing how far from yellow various colors are.
yellow_car = car.colorDistance(Color.YELLOW)
yellow_car.show()
time.sleep(5)
yellow_car.show().quit()

# Subtract greyscale image from cropped image to show just the yellow portions.
only_car = car - yellow_car
only_car.show()
time.sleep(5)
only_car.show().quit()

print only_car.meanColor()

本とチュートリアルの両方で与えられているの(0.6376000000000001, 2.096775, 5.170425)ではなく、 の結果を返します。(25.604575, 18.880775, 4.4940750000000005)

車のあるトリミングされた駐車場の最初の画像は問題ないように見えますが、グレースケールの画像では明らかに奇妙に見えます。取得した画像は 90 度回転しており、例の画像とはまったく異なります。Dropboxのリンクはこちらです。

そしてそこから... colorDistanceが本来あるべきものから遠く離れていると...平均色値が正しく出てきません。

ステップがファンキーな回転グレースケール画像を返した理由についてのアイデアや提案colorDistance()はありますか?

4

1 に答える 1