74498


PythonのGUIを作成中です。  
画像ファイルを選択し、PicketFenceというモジュールで解析したいと考えています。

[code]

    import tkinter
    from tkinter import filedialog
    from pylinac import PicketFence
    
    #ボタンがクリックされたら実行
    def file_select():
      idir = r"C:\Users\tanim\OneDrive\デスクトップ" #初期フォルダ
      filetype = [("DICOM","*.dcm"), ("ZIP","*.zip"), ("すべて","*")] #拡張子の選択
      file_path = tkinter.filedialog.askopenfilename(filetypes = filetype, initialdir = idir)
      input_box.insert(tkinter.END, file_path) #結果を表示
      
    
      pf_img = PicketFence(file_path())
      pf = PicketFence(pf_img)
      pf.analyze(tolerance=0.15, action_tolerance=0.03) 
      print(pf.results())
      pf.plot_analyzed_image()
      pf.publish_pdf('mypf.pdf')
               
    #ウインドウの作成
    root = tkinter.Tk()
    root.title("Python GUI")
    root.geometry("360x240")
    
    #入力欄の作成
    input_box = tkinter.Entry(width=40)
    input_box.place(x=10, y=100)
    
    #ラベルの作成
    input_label = tkinter.Label(text="結果")
    input_label.place(x=10, y=70)
    
    #ボタンの作成
    button = tkinter.Button(text="参照",command=file_select)
    button.place(x=10, y=130)
    button = tkinter.Button(text='計算', command=PicketFence)
    button.place(x=140, y=170)
    
    #ウインドウの描画
    root.mainloop()
    
[/code]

というコードを作成したのですが、

[code]

    TypeError: __init__() missing 1 required positional argument: 'filename'
    
[/code]

というエラーが発生します。  
どのように改善すべきでしょうか？  
どなたかご教授お願い致します。


CC BY-SA 4.0
2021-02-28T13:17:06.527
74324
2021-03-07T11:35:03.463
2021-03-07T11:35:03.463
3060
41571
question
python tkinter gui
Pylinac の Picket Fence モジュールでファイル選択時にエラーが発生する


`pf = PicketFence(pf_img) `  
`pf = PicketFence(file_path)`  
変更することで上手くいきました。

ご指摘いただいたので自己回答させていただきます。


CC BY-SA 4.0
2021-03-07T11:30:07.433
74498
2021-03-07T11:30:07.433
41571
74324
answer