2018年2月25日 星期日

run DeepSkyStacker 32/64 bit and other windows software on mac via wine / 4gb_patch in wine/notes for imageJ

Updated 2020/05/07

注意*WINE 目前尚不支援 Catalina(含)以後的OS。(2021) 
             
1.在mac 上執行DSS等windows程式 (透過wineskin打包成app, 或以wine stable 3.0 直接開啟exe )
2.用AstroImageJ做 plate solve
3.用ImageJ的 background subtract搭配 影像計算器來消去不均勻背景
4.用wineskin 在mac上安裝自己想執行的windows程式。以及如何解決NET framework的問題(如果有此問題) solved >"err:module:load_builtin_dll failed to load .so lib for builtin L"msxml3.dll...."
5. run 4gb-patch in wineskin wrapper  


(1) run DSS and other windows software on mac via wine 
32bit DeepSkyStacker.app, FlatAide.app, PIT.app, Registax.app and IRIS.app...
packed with wineskin engine : (you don't have to install wineskin)
4GB patched already (resolved "out of memory" error)
see software section(download links)



*(MacOSX) 以wine打包或開啟的DeepSkyStacker: 開啟疊合選項視窗時會先出現一個參數設定錯誤 "Encountered an improper argument "的訊息,不過把它關掉就可以繼續設定
just close the error message box, DSS will still work. (control will pass back to the parent window)
這可能是載入設定預設值至視窗的問題,並無法正確讀入所有參數設定,所以視窗中的疊合參數許多呈現並未設定的狀態,需自己設定(預設是會儲存校正後的中介檔 tiff,若不需要請關閉這些中介檔選項以增快疊合速度)。受這個錯誤影響較大的地方是疊合參數的視窗中不會出現背景校正的下拉選單。不過這個問題可以經由兩種方式克服,一是從「推薦設定...」的功能中修改。二是直接用文字編輯器編輯檔案清單中的各個參數設定值(當載入檔案清單後若不去更動疊合參數,記錄在清單中的參數並不會有變化,疊合時將以清單中的設定進行)。
 change background calibration mode
 change background calibration mode (and other parameters) , the second way

V 3.3.4 (含)以後的版本皆可正常讀取 pentax的 .PEF格式。(以上.app測試版本 OsX 10.11.6 ),第一次執行app等主畫面開啟有時會稍微久一點,疊合上目前是還沒遇到什麼問題。轉成開源碼後的 V4.1 beta 版 32bit部分已打包成 app, 64bit 請直接以wine stable 開啟執行檔即可(參考下方說明)。


 Run  64bit DeepSkyStacker V4.1 via wine stable 3.0 on your MacOSX:

1.先在windows上安裝好DeeSkyStacker(64bit DSS Installer),然後將整個安裝好的DeeSkyStacker目錄拷貝到你使用MacOSX的電腦中(或從這裡下載 - download directory,我已經把安裝好的目錄壓縮成zip)。 install 64bit DSS V4.1 on your windows first  ,  then copy the [DeepSkyStacker] directory to your mac (or just download the directory from my dropbox), best on a ssd drive

2.下載並安裝 Wine Stable 3.0 至MacOSX (安裝時勾選支援64bit)。 install wine stable 3.0 on your mac (check the  64bit support box in setup process )


3.在Finder中找到DeepSkyStacker的目錄,雙指點擊DeepSkyStacker.exe ,在出現的選單中選擇以wine Stable 開啟。 (第一次開啟DSS程式需要等待一些時間。 請忽略開啟疊合功能一開始出現的 "Encountered an improper argument " 錯誤訊息,關閉視窗即可繼續,please ignore the error message 。)    ,背景校正的設定方式請參考前面說明。












(2) Plate Solve via AstroImageJ
1. register your Astrometry.net account (simple register with google or flickr account) and you will get a user key (free)

2.install the AstroImageJ(free)

3.load your image and press the [plate solve] icon

4. enter your user key

5.預設當你點選完成的畫面中的任一點,除了顯示相關的FITS 資訊外,還會自動連結到simbad查詢。

6.若發現經常搜尋不到,可能是搜尋的誤差範圍設得太小,請嘗試調整範圍。



(3) ImageJ : background subtract 
用ImageJ 的 background subtract 功能時的備忘 (關於background subtract功能及安裝xlib插件請參考此篇
*我試過用AstroImageJ裡的 background subtract 功能沒有反應 (目前還不知問題在哪),所以還是建議同時安裝ImageJ 、AstroImageJ。

因為這個功能的背景通常會清除的很乾淨,這對應用在某些天體來說,譬如並非是強調星際間塵埃、星雲的場合,那麼可能會很適合,因為背景通常都會修正到非常漂亮的黑。但是對於充滿塵埃雲氣的影像,有時可能不需要減的這麼乾淨。個人的嘗試是,可以先僅用rolling ball 萃取出背景即可,然後再用影像計算器 image calculator(請安裝beat 的xlib plugin,這插件的影像計算器可以輸入算式,比較方便),先將背景檔乘暗一點(或先減掉一個常數?),再用原圖去減掉背景,因為算式是可以隨時修改且不會影響到原圖,所以可以嘗試找出比較滿意的效果,若直接先subtract後再來拉亮,很多資訊可能都已遺失。
beat插件內的影像計算器會顯示所有你目前開啟的影像,並個別給予一個變數。所以當你做出背景後可以先用Image 選單中的rename功能先將此背景檔即時改名,這樣便可以不用先另存新檔。






(4). pack your own wrapper (xxx.app)
a.如何打包自己的想執行的windows 程式:
1.下載 wineskin
2.執行 wineskin
按 + 看看有沒有新的engine,有就下載新的引擎,選擇好等下要打包到app內的引擎版本,然後按 Create New Blank Wrapper 建立你的app
建立完成會在wineskin的套件目錄(顯示套件內容)下找到你命名的app(目前只有安裝引擎尚未安裝windows程式)。

3.執行你的app,接著會出現安裝選單。執行 Install Software。

4.接著執行 Choose Setup Executable,點選你要安裝的windows軟體的安裝程式(.exe 或.msi ),然後就照著安裝程式的提示如同在windows下安裝就可以了。



*注意:安裝時請不要更動安裝的目錄。下圖顯示一個安裝好的 DeepSkyStacker.app的套件內容,裡面包含你打包的 wineskin 引擎(所以若你只是要執行winskin打包好的app,那麼你就不需要先安裝wineskin),以及一個虛擬磁碟C 目錄,deepskystacker程式便是安裝在虛擬磁碟C 目錄中(所以安裝時直接使用安裝程式提示的安裝目錄即可)。


b.打包FlateAide, PIT 遇到的問題解決辦法:
一般打包程式依照前面的正常安裝程序,幸運的話不用再做任何修改就可以直接執行。
但在打包FlatAide與 PIT這兩個程式時,一開始都無法正常執行,查看log 檔的錯誤訊息:
"err:module:load_builtin_dll failed to load .so lib for builtin L"msxml3.dll...." 上網查有很多有關這個錯誤訊息的討論串,可是我找不到什麼明確的解答方式,後來自己想可能是NET framework的問題,嘗試用winetrick 安裝MS NET 4.5後就可以正常運作了。這個方式也許也可以提供打包後執行出現同樣問題的程式參考。
解決辦法如下:
1.先照正常程序打包好之後,進入該app的套件內,執行套件內的winskin 引擎。然後選擇Advanced > Tools > winetricks


2. 在dlls 下勾選 dotnet45 MS .NET 4.5,然後執行 RUN

3.
依指示完成 framework 2.0 的安裝程序。安裝完成後重新執行就正常了。


(5). run 4gb_patch.exe in wineskin wrapper (在wineskin wrapper內執行4gb_path的方式)


1.將 4gb_patch.exe 拷貝至 wrapper (xxxx.app) 套件內的虛擬 C槽裡、將要進行patch的程式目錄中。  cope the 4gb_patch.exe to the virtual directory where the executable (*.exe) you want to patch is located

2.執行wrapper的wineskin
run wineskin within the xxx.app wrapper  

3.執行[Advanced] 選單裡的command line shell (command line shell會開啟虛擬C槽的視窗) run command shell (in advanced menu)


4.使用基本dos指令'CD'進入到 程式所在目錄 (先鍵入 "CD\" 到根目錄 C:),鍵入命令 4gb_patch xxx.exe 然後按下 Enter 完成。4gb_patch 會修改執行檔,並將原執行檔儲存成備份。
cd to directory where the executable  and 4gb_patch.exe are located and run "4gb_patch xxx.exe" (eg. 4gb_patch iris.exe)




沒有留言:

張貼留言

歡迎留言分享指教 feel free to leave your message
(目前設定為需有google帳戶才能留言)