2016-04-01 21 views
0

kullanmaya çalışıyorum Bir regresyon modeli oluşturmak için opencv kullanmaya çalışıyorum.OpenCV atma hatası. Bir Rasgele Orman Modeli

Bunu kullanıyorum ama neyin yanlış olduğunu bilemiyorum:

OpenCV Error: Unsupported format or combination of formats (type mask must be 8uC1 or 8sC1 array) in cvPreprocessVarType, file ........\opencv\modules\ml\src\inner_functions.cpp, line 519 Traceback (most recent call last):

a.train(save_all[features[i]], cv2.CV_ROW_SAMPLE, Y[:][:, i], params=params, varType=var_types) cv2.error: ........\opencv\modules\ml\src\inner_functions.cpp:519: error: (-210) type mask must be 8uC1 or 8sC1 array in function cvPreprocessVarType

bu hatayı arama denedim ama çok fazla yoktur: Her zaman bu dışarı atıyor http://pastebin.com/9vEpn4GC

Sonuçlar. Sanırım var_types deklarasyonunu içeriyor.

+2

? Bu, şamandıraların bir anlamı olmadığı için, bir numaralandırma listesidir. –

+1

Ve hata iletisi özellikle "tip maske 8uC1 veya 8sC1 dizisi olmalı", bunu işaretsiz veya imzalı 8 bitlik değerler istediği anlamına gelir. –

cevap

1

var_types dizisi, numaralandırma değerlerinin bir listesidir. Hata mesajının da belirttiği gibi, elemanların veri tipi bir bayt, float olmamalıdır.

hile yapmak gerekir: Nasıl `var_types = np.array ([cv2.CV_VAR_NUMERICAL] * var_n + [cv2.CV_VAR_ORDERED], np.uint8)` yaklaşık

var_types = np.array([cv2.CV_VAR_NUMERICAL] * var_n + [cv2.CV_VAR_ORDERED], np.uint8) 
+0

Evet, ilk defa opencv kullanıyordum. Simdi anladım: OpenCV Hatası: Hatalı argüman (tip maskesi + 1 boyutunda olmalıdır) cvPreprocessVarType –

+0

@ AndréCosta Tren çağırmadan önce 'save_all [features [i]]' biçiminde nedir? Var_types'in şekli nedir? Benimle denemek için veri dosyalarım yok ... –

+0

Sorun benim var_n'm yanlıştı çünkü ilk giriş şeklimi daha küçük matrislere işlenmeden kullanıyorum. El ile var_n atadım ve şimdi her şey çalışıyor :) Yardımlarınız için çok teşekkürler! –

İlgili konular