###実現したいこと・問題点
追加で処理をする関数の作成方法が分からない
「Draw().text()」に「Draw().text().rectangle()」のように自由に処理を追加できるようになる
###詳細
OpenCVのcv2の関数を自作しコードを簡潔にするために自作ライブラリを作成途中。
既にある関数、Draw.text()に、「Draw(引数).text(引数).rectangle_text(引数)」の「.rectangle_text(引数)」ように関数を追加し、さらに追加で処理できるようにしたい。
###コード
Python
1import cv2 2 3class Draw: 4 def __init__(self,image,color,thickness = 1, line_type = default_line_type): 5 self.image = image 6 self.color = color 7 self.thickness = thickness 8 self.line_type = line_type 9 10 def ... 11 12 def text(self,x,y,text,font_scale = 1,font = default_font, inversion = False, org = False): 13 if not org: 14 ... 15 ... 16 return cv2.putText( self.image , text , ( x , y ) , font , font_scale , self.color , self.thickness , self.line_type , inversion ) # ndarray 17
###試したこととエラー
一つ目
Python
1def rectangle(self, interval): #追加の処理を行う関数を作成 2 処理 3 return ... 4 5Draw(img,(0,0,0)).text(0,0,"Hello").rectangle(2) 6 7######## 8#エラー ndarray object has no attribute rectangle 9########
二つ目
Python
1class Draw: 2 def __init__(self...): 3 ... 4 class text: #classを作成 5 def __init__(self...): 6 処理 7 return ... 8 def rectangle(self...): 9 return cv2.rectangle(self.image, ...) 10 11Draw(img,(0,0,0)).text(0,0,"Hello").rectangle(2) 12 13######## 14#エラー In rectangle in text in Draw : self.image is not defined 15########
###環境
OpenCV-最新バージョン
Python-最新バージョン
###最後に
回答よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー