ïŒ818ãã
ãããåäœã§ã¯ãªãã€ã³ã¿ã©ã¯ãã£ãã«å®è¡ã§ããããã«ãgroomutilsãåèšèšããŸãã
ããã«ãããäžéã®ã°ã«ãŒãã³ã°ãã¡ã€ã«ãä¿åããå¿
èŠããªããªãïŒåé¡ïŒ598ïŒãæé ãã¹ãããã§ããŸãïŒåé¡ïŒ507ïŒã
ãã®åé¡ããshapeworkspythonããã±ãŒãžã³ã°ããã³é¢é£ãããŠãŒã¹ã±ãŒã¹èšèšã®èŠª/é§åã®åé¡ãšããŠäœ¿çšããŸãããã åŸã§ããã«çŠç¹ãçµã£ãåé¡ãè¿œå ããŠããããããã®åé¡ã«é¢é£ä»ããããšãã§ããŸãã ããã«å¿ããŠé¢é£ããåé¡ãã¯ããŒãºããŸããã
@ jadie1 @ iyerkrithika21 Python APIã®äžéšãšããŠããã«ã€ããŠè°è«ããã«ã¯ãGCã¹ãããã«åå ããŠãã ããã å¿ èŠã«å¿ããŠæ©ãã«åºçºã§ããããã«ããããè°äºã«äžã«ç§»åããŸããã
çŸåšãPythonã¢ãžã¥ãŒã«ã®ããã±ãŒãžåãæ€èšããŠããŸãã ææ¡ãèããããã°ç§ã«pingããŠãã ããã
ç§ãèŠã€ããããã€ãã®æ瀺ïŒ
ãããŸã§ã®ãšãããäŸåé¢ä¿ã®ä»æ§ãåªããŠãããšèšãããŠããcondaã«æãèå³ããããŸãããäœãããã°å¹žãã§ãã
condaã®çç±ã¯ãã³ãã³ãã©ã€ã³ãPythonã¢ãžã¥ãŒã«ãã¹ã¿ãžãªãªã©ããã®ããã±ãŒãžã§ãã¹ãŠãã€ã³ã¹ããŒã«ã§ããã¯ãã ããã§ãã ããããPythonã¢ãžã¥ãŒã«ããå§ããŸãããã
ç§ã®æ倧ã®ææã¯ããã«ããã©ãããã©ãŒã ã®åé¡ãç§ãã¡ã®ç掻ã奪ãããšã§ããããã§ãæåã«OSXãæ©èœãããŠãããããå§ããããšæããŸãã
Ubuntu 18.04ã§ã¯ããŠãŒã¹ã±ãŒã¹ãæ©èœããŸããã§ããã次ã®ããšãè¡ãå¿ èŠããããŸããã
sys.path.append('../../build/cmake-build-release/bin/')
ãè¿œå ããŸããLD_LIBRARY_PATH=../../dependencies/install/lib/
èšå®ããŸãïŒããã§ãªãå Žåã¯ããlibvcl.soãããªãããšã«ã€ããŠæå¥ãèšããŸãïŒäžéåºåãä¿åãããªãã·ã§ã³ã䜿çšããã«ã¯ãåå¥ã®æžã蟌ã¿/ä¿åæ©èœã§ã¯ãªããåæäœã«æžã蟌ã¿ãªãã·ã§ã³ãå«ããããšãã§ããŸããïŒ
ç§ãæ³åããŠããã®ã¯ïŒ
img.binarize(write=False)
img.resample(write=True).binarize(write=True)
ãã以å€ã®
img.binarize()
img.write()
img.resample()
img.write()
ããã«ã¯ããããå
¥ååŒæ°ãšããŠãã¡ã€ã«åãå¿
èŠã«ãªããŸã
äŸïŒimg.binarizeïŒwrite = Trueãfilename = 'blabla'ïŒ
@archanasri @cchristeã®èãïŒ
äžéåºåãä¿åãããªãã·ã§ã³ã䜿çšããã«ã¯ãåå¥ã®æžã蟌ã¿/ä¿åæ©èœã§ã¯ãªããåæäœã«æžã蟌ã¿ãªãã·ã§ã³ãå«ããããšãã§ããŸããïŒ
ç§ãæ³åããŠããã®ã¯ïŒimg.binarize(write=False) img.resample(write=True).binarize(write=True)
ãã以å€ã®
img.binarize() img.write() img.resample() img.write()
Image.writeã¯ãä»ã®ãã¹ãŠãšåæ§ã«ãã§ãŒã³å¯èœã§ãã ãã§ãŒã³ã«å
¥ããã ã
ããªãã¯ããããããã
img.binarize().write(<path>)
img.resample().write(<path>).binarize()
16:58 Shireen Elhabianã§ç«ã2021幎1æ19æ¥ã«ã¯[email protected]
æžããŸããïŒ
ããã«ã¯ããããå ¥ååŒæ°ãšããŠãã¡ã€ã«åãå¿ èŠã«ãªããŸã
äŸïŒimg.binarizeïŒwrite = Trueãfilename = 'blabla'ïŒ@archanasri https://github.com/archanasri @cchriste
https://github.com/cchristeã®èãïŒäžéåºåãä¿åãããªãã·ã§ã³ã䜿çšããã«ã¯ã
åå¥ã®æžã蟌ã¿/ä¿åã§ã¯ãªããåæäœå ã®æžã蟌ã¿ãªãã·ã§ã³
é¢æ°ïŒ
ç§ãæ³åããŠããã®ã¯ïŒimg.binarizeïŒwrite = FalseïŒ
img.resampleïŒwrite = TrueïŒ.binarizeïŒwrite = TrueïŒãã以å€ã®
img.binarizeïŒïŒ
img.writeïŒïŒ
img.resampleïŒïŒ
img.writeïŒïŒâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/SCIInstitute/ShapeWorks/issues/865#issuecomment-763221837 ã
ãŸãã¯è³Œèªã解é€ãã
https://github.com/notifications/unsubscribe-auth/AAJT3EP3HDOHQGC54NMWSJDS2YMA7ANCNFSM4U3KV45Q
ã
Image.writeã¯ãä»ã®ãã¹ãŠãšåæ§ã«ãã§ãŒã³å¯èœã§ãã å¿ èŠã«å¿ããŠãã§ãŒã³ã«å ¥ããŠãã ããã
img.binarize().write(<path>) img.resample().write(<path>).binarize()
âŠ
æžã蟌ã¿é¢æ°ãé£éå¯èœã§ããããšãç解ããŠããŸãã åæäœå
ã§æžã蟌ã¿ãªãã·ã§ã³ãææ¡ããç§ã®ãã€ã³ãã¯ãé¢æ°ã1ã€ã ãæã¡ãäžéã€ã¡ãŒãžãä¿åãããã©ããã«ããããããã©ã°ãæž¡ããŠããŠãŒã¹ã±ãŒã¹ãåçŽåããããšã§ããã
sudoã³ãŒãã®äŸïŒ
function groom(write_flag):
img.binarize(write = write_flag).resize(write = write_flag).crop(write=write_flag)
groom(write_flag = True)
groom(write_flag = False)
ãã®ããã«ããŠãåãã³ãŒããç¹°ãè¿ããªãããã«ããããšãã§ããŸãã ãã®ã¢ã€ãã¢ã®å®çŸå¯èœæ§ãç¥ãããã ãã§ãã
GroomUtils.pyã®ã»ããã解äœããããšããŠããçç±ã®1ã€
ããã«ããŒãæ©èœã¯ãã°ã«ãŒãã³ã°æäœãããééçã«ããããšã§ãã
ãããã®æäœãã¢ããªã·ãã¯é¢æ°ã«ããã±ãŒãžåããã«ãæè»ã«
ãã©ã¡ãŒã¿ãæž¡ãã ãã§ãç°¡åã«äœæã§ããŸãã
ç解ãããããŠãŒã¹ã±ãŒã¹ã®ãã¢ã³ã¹ãã¬ãŒã·ã§ã³ã ãã§ãŒã³ãïŒããŸãïŒäœ¿çšããªãå Žå
ç§ãã¡ã®äŸã§ã¯ãæžãèœåãäŒããããšã¯éåžžã«ç°¡åã§ã
å¿
èŠãšæãããå Žåã®äžéçµæã ä»ããããã¯ãã¹ãŠããã§ã
ãããã®çµæãå¿
èŠãšãããŠãŒã¹ã±ãŒã¹ãããããã
1ã€ã®GroomUtilsé¢æ°ã¯ãããã€ãã®ïŒããããä»»æã®ïŒã»ãããå®è¡ããŸã
æäœããã®çµæãä¿åãã次ã®é¢æ°ã¯ãããã®çµæãèªã¿åããŸã
åŠçãç¶è¡ããŸãã
æåã«ãã¹ãŠããã©ããåããããšããå§ãããŸãããã¹ãŠã®ãŠãŒã¹ã±ãŒã¹ã§ã¯ã
æ¥åäœã ãã§ãã ç§ãã¡ãèŠããã®ã¯æ¯èŒç
ç¹å®ã®å Žåã«èããç°ãªãäžé£ã®åçŽãªæäœ
ïŒäŸïŒå
ã®ç»åããä¹ãå¿å°ã«æ²¿ã£ãŠãããå ŽåïŒã ãŠãŒã¶ãŒãããããš
ç§ãã¡ã®äŸããåŸãããšã¯ãäœãã§ããããããã³/ãŸãã¯äœãã§ãããã«ã€ããŠã®ã¯ããã«æ確ãªç解ã§ã
ç¬èªã®ããŒã¿ã»ããã«å¯ŸããŠå®è¡ããå¿
èŠããããŸãã
ããã¯ãç§ããŠãŒã¶ãŒã§ããå Žåã«ãšãã¥ã¬ãŒãããããã®ã®äŸã§ãã
for img in images:
# since we're starting with fuzzy data, we first need to ensure it's a
binary (black and white) image in order to <explain>
img.binarize()
# next, we must ensure images all have the same logical dimensions since
<explain>
img.resize()
# now we'll crop these images using the bounds we computed earlier so they
all encompass the data without leftover space (since it can be costly and
pointless to compute)
img.crop(bounds)
ãããã®æäœã®ããããã«æžã蟌ã¿ãé£éãããäŸãæäŸã§ããŸãã
ãããã®1ã€ã®åŸã«.write(<path>
è¿œå ãããªã©ã ç§ãã¡ãæãŸãªãã®ã¯ããã€ãã§ã
ããããã¯ãã¹ãŠã®äººã«ãšã£ãŠåãã§ã¯ãªãã®ã§ãããã ãããããããšããæ©èœ
ããŒã¿ã»ããã ãã®ä»£ããã
è¡ãããŠããããšããã¹ãŠã§ã¯ãªãããšããŠãŒã¶ãŒã«ç€ºãããšã§ããŠãŒã¶ãŒã«åãäžããŸã
ããã¯è€éã§ãå€æŽãéåžžã«ç°¡åã§ãã 圌ãã«äžããã®ã§ã¯ãªã
ç¡æ°ã®ãã©ã¡ãŒã¿ãæã€ãã©ãã¯ããã¯ã¹ã€ã³ã¿ãŒãã§ã€ã¹ããããã«ããŒãäžããŠã¿ãŸããã
圌ãã¯é転ããŸãã ããããåãé€ãããšã®èåŸã«ããå
šäœçãªèããæããã«ããã®ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸã
GroomUtilsã®ã
9:49ã¯ãªã·ã«ã¢ã€ã€ã«ã§æã2021幎1æ25æ¥ã«ã¯[email protected]
æžããŸããïŒ
Image.writeã¯ãä»ã®ãã¹ãŠãšåæ§ã«ãã§ãŒã³å¯èœã§ãã ãã§ãŒã³ã«å ¥ããã ã
ããªãã¯ããããããã img.binarizeïŒïŒãwriteïŒïŒã
img.resampleïŒïŒãwriteïŒïŒ.binarizeïŒïŒ
âŠ<ïŒm_-7433729883366947300_>æžã蟌ã¿é¢æ°ãé£éå¯èœã§ããããšãç解ããŠããŸãã ç§ã®ãã€ã³ã
åæäœå ã®æžã蟌ã¿ãªãã·ã§ã³ãææ¡ããã®ã¯ã1ã€ã ãã«ããããšã§ãã
é¢æ°ãå®è¡ããäžéç»åãä¿åãããã©ããã®ãã©ã°ãæž¡ããŸã
ãŸãã¯ãããããŠãŒã¹ã±ãŒã¹ãç°¡çŽ åããŸãã
sudoã³ãŒãã®äŸïŒé¢æ°groomïŒwrite_flagïŒïŒ
img.binarize(write = write_flag).resize(write = write_flag).crop(write=write_flag)
æ°éïŒwrite_flag = TrueïŒ
æ°éïŒwrite_flag = FalseïŒ
ãã®ããã«ããŠãåãã³ãŒããç¹°ãè¿ããªãããã«ããããšãã§ããŸãã
â
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/SCIInstitute/ShapeWorks/issues/865#issuecomment-766952032 ã
ãŸãã¯è³Œèªã解é€ãã
https://github.com/notifications/unsubscribe-auth/AAJT3EJND2F3EDVU75NB6ITS3WOIPANCNFSM4U3KV45Q
ã
@ iyerkrithika21 @ jadie1
@cchristeã«åæããŸãã æå³çã«åççã§ãªãéãïŒããšãã°ããã€ããªã€ã¡ãŒãžã®ãªãµã³ããªã³ã°ïŒããã§ãŒã³ã䜿çšããªãã§ãã ããããããã®å Žåã§ãããã®ãªãµã³ããªã³ã°ïŒã³ã³ãïŒã¹ãããã®ãã¹ãŠã®äžéåºåãæžã蟌ãå¿ èŠã¯ãããŸããã ãŠãŒã¹ã±ãŒã¹ããããããããèªå·±ææžåãããŠãŒã¶ãŒãç°¡åã«é©å¿ããã³ã«ã¹ã¿ãã€ãºã§ããããã«ããŸãããã
ïŒç¹ã«ãããã°ã®ããã«äžæçã«ïŒã€ã¡ãŒãžãæžã蟌ãããšã¯ã
é£éãåççã§ããå Žåã
# let's see what happened
img.operation(...) -> img.operation(...).write(<path>)
äžæ¹ããããéèŠãªã¹ãããã§ããå Žåãããããã®äžã«çœ®ãæ¹ãè¯ããããããŸãã
ã³ã¡ã³ãä»ãã®ç¬èªã®è¡ã
...
# now let's write the results
img.write(<path>)
åå10æ34åAM Shireen Elhabianã§æã2021幎1æ25æ¥ã«ã¯[email protected]
æžããŸããïŒ
@ iyerkrithika21 https://github.com/iyerkrithika21 @ jadie1
https://github.com/jadie1@cchristehttps ïŒ //github.com/cchristeã«åæããŸãã 䜿ããªãããã«ããŸããã
æå³çã«åççã§ãªãéããé£éïŒããšãã°ããªãµã³ããªã³ã°ïŒ
ãã€ããªã€ã¡ãŒãžïŒããããã®å Žåã§ãããã¹ãŠãæžãå¿ èŠã¯ãããŸãã
ãã®ãªãµã³ããªã³ã°ïŒã³ã³ãïŒã¹ãããã®äžéåºåã ãŠãŒã¹ã±ãŒã¹ãäœããŸããã
ãããããããèªå·±ææžåãããŠããããŠãŒã¶ãŒãç°¡åã«é©å¿ããã³ã«ã¹ã¿ãã€ãºã§ããŸããâ
ããªããèšåãããã®ã§ããªãã¯ãããåãåã£ãŠããŸãã
ãã®ã¡ãŒã«ã«çŽæ¥è¿ä¿¡ããGitHubã§è¡šç€ºããŠãã ãã
https://github.com/SCIInstitute/ShapeWorks/issues/865#issuecomment-766983878 ã
ãŸãã¯è³Œèªã解é€ãã
https://github.com/notifications/unsubscribe-auth/AAJT3EKKARLKY4VKBRPHJWLS3WTSNANCNFSM4U3KV45Q
ã
åæ§ç¯ã®æé ïŒ
ããããã§ã«éå§ãããŠããpython_moduleãã©ã³ããããããšãå¿ããªãã§ãã ããã ãã°ããã®éããŒãžãããŠããŸãããã誰ããããã«åãçµãã å Žåã¯æçš¿ããŠãã ããã ããã¯ç§ã®åªå ãªã¹ãã®äžäœã«ãããŸãã
æãåèã«ãªãã³ã¡ã³ã
åæ§ç¯ã®æé ïŒ