Mathematicaã§ä»»æç»åã®è¼ªéãæ°å¼ã«å¤æãã
330åã®1000次æ¹ç¨å¼ã«ããã¾ã©ããã®ã«ã pic.twitter.com/QnuOhXQfiT
— ããã (@aomoriringo) November 27, 2013
ä¸è¨ã®ãããªãä»»æã®ç»åã®è¼ªéãæ°å¼ã«å¤æããããã°ã©ã ãç´¹ä»ãã¾ãã
çºç«¯
Wolfram|Alphaã«ã¯ãPerson Curveãã¨å¼ã°ããé¡ã®æ¤ç´¢çµæãåå¨ãããBarack Obama CurveããHatsune Miku like curveãã¨ãæ¤ç´¢ããã¨ããã®äººç©ã»ãã£ã©ã表ãããã©ã¡ããªãã¯æ¹ç¨å¼ã¨ãã®ããããçµæã表示ããã¾ãã
ããã«ã¤ãã¦ã¯ä»¥ä¸ã«ç¤ºãããã«ããããã®è¨äºããããåå¨èªä½ã¯æ©ãããç¥ã£ã¦ãã¾ããã
数式が解明されてしまった初音ミク。その他キャラクターを色々試してみました | 猫と杓子
http://nlab.itmedia.co.jp/nl/articles/1305/02/news063.html/
さまざまな顔を描画できる数式|WIRED.jp
ããã¦æ°æ¥åã«Mathematicaã§ä½ãæ¹ã解説ãã¦ããè¨äº(Making Formulas… for Everything—From Pi to the Pink Panther to Sir Isaac Newton—Wolfram Blog)ãæãã¦ããã£ãã®ã§ããããåèã«ãã¦ãã£ã¦ã¿ã¾ããã(ã¨ãããã»ã¼ã³ãã)
æ¹é
以ä¸ã®ã¹ããããããªãã¾ãã
- ç»åã®ã¨ãã¸æ½åºããã
- ã¨ãã¸ä¸ã®ç¹ããã©ã³ãã ã§ç¹ãé¸æããããããè¿ãã®ç¹ãåãè¾¼ããã¨ãç¹°ãè¿ãã¦ç¹ç¾¤ãä½ãããã®ã¨ãåãè¾¼ãã ç¹ç¾¤ã®ä¸¦ã³ãæ¥æ¿ãªã«ã¼ãã«ãªããªãããã«èª¿æ´ããããããç¹°ãè¿ããã¨ãã¸ä¸ã®å ¨ã¦ã®ç¹ãè¤æ°ã®ç¹ç¾¤ã«åå²ãã
- åç¹ç¾¤ã«å¯¾ãã¦ãã¼ãªã¨å¤æãè¡ããæ°å¼ã«ãã
- æ°å¼ããããããã
å®è·µ
以ä¸ãå®è¡ãããããã®å
¨ã¦ã®Mathematicaã³ã¼ãã¯ä»¥ä¸ã®gistãåç
§ãã¦ãã ããã
任意画像の輪郭を数式に変換してプロットする (Mathematica ver.8)
以ä¸ã«ç¤ºãvimã®ãã´ç»åã使ç¨ãã¦ãæ°å¼ã«å¤æãããéç¨ãè¦ã¦ã¿ã¾ãããã
ã¡ãªã¿ã«ç§ã¯æ®æ®µemacsã使ã£ã¦ãã¾ãã
ã¨ãã¸æ½åº
ç»åãå¼æ°ã«ã¨ããã¨ãã¸ã®æ½åºçµæããã¤ããªç»åã¨ãã¦è¿ãEdgeDetecté¢æ°ã使ç¨ãã¾ãã
img = Import[imageURL]; edgeImage = Thinning[EdgeDetect[ColorConvert[ ImagePad[Image[Map[Most, ImageData[img], {2}]], 20, White], "Grayscale"]]]
ãã®EdgeDetectã®ç²¾åº¦ãç´ æ´ããããæçµçãªããããçµæãè¯ãä¸å ã¨ãªã£ã¦ãã¾ãã
ãã¿å¡ãã®é¨åãå¤ãç»åãã¤ã¾ããã´ãã¢ãã¡ã®çµµãªã©ã¯è¯ãçµæã«ãªãããããã°ã©ãã¼ã·ã§ã³ãå¤ãã£ãããç¾å®ã®åçã®å ´åã¯æ³å®ããªãçµæã«ãªã£ã¦ãã¾ããã¨ãå¤ãã§ãã
ã¨ãã¸ãè¤æ°ã®ç¹ç¾¤ã«åå²
æ¹éã§ç¤ºãããããªå¦çãè¡ããè¤æ°ã®ç¹ç¾¤ã«åå²ãã¾ãã
edgePoints = {#2, -#1} & @@@ Position[ImageData[edgeImage], 1, {2}]; SeedRandom[2]; hLines = pointListToLines[edgePoints, 16]; Graphics[{ColorData["DarkRainbow"][RandomReal[]], Line[#]} & /@ hLines]
以ä¸ã¯åç¹ç¾¤ãã¨ã«å¥ã
ã®è²ãã¤ããç·ã§ã¤ãªãã§æç»ããå³ã§ãããã®æç¹ã§ã¯ã¾ã æ°å¼ã«ãªã£ã¦ãã¾ããã
æ°å¼ã«å¤æ
åç¹ç¾¤ãã¨ã«ãã¼ãªã¨å¤æãè¡ããæ°å¼ã«å¤æãã¾ãã
(ãã¼ãªã¨å¤æã«ã¤ãã¦ã¯フーリエ変換の本質ãªã©ãåèã«ãã¦ãã ããã)
fCs = fourierComponents[hLines]; Show[ParametricPlot[ Evaluate[makeFourierSeries[#, t, 100] & /@ fCs], {t, -Pi, Pi}, Axes -> False]]
ããã§å¼æ°ã«ä¸ãã¦ããã100ãããã¼ãªã¨å¤æå¾ã®æ°å¼ã®æ¬¡æ°ã¨ãªãã¾ãã大ããã»ã©ç²¾åº¦ããããªãã¾ãã
次æ°ãä¸ãã£ã¦ããã¨ãã©ã®ããã«ãããããå¤åãã¦ããããè¦ã¦ã¿ã¾ãããã
Partition[Table[paraplot[n], {n, 1, 12}], 4] // GraphicsGrid
n=1ã®å ´åæ¥åã®ã¿ãæç»ããã¦ãã¾ãããnã大ãããªãã«ã¤ãã¦ã ãã ãã¨å
ã®ç»åã®å½¢ã«è¿ã¥ãã¦ãããã¨ããããã¾ãã
ãããã®éç¨ãgifã«ãã¦ã¿ãã¨ãããã¨ã¦ãé¢ç½ãã
å¤å´ã®ç·ãä¸çªé·ããåæã«ä¸çªæéãããã£ã¦ãã¾ãã
ãã®ãã¨ãããä¸çªé·ãç·åãã©ãã ãéãåæãããã«ãã£ã¦ãä½æ¬¡ã¾ã§è¿ä¼¼ããã°ååãªç²¾åº¦ãå¾ããããã©ããã決ã¾ã£ã¦ãããã¨ãæ¨æ¸¬ã§ãã¾ãã
æå¾ã«ãä¸è¨Vimã®ãã´ã®æ°å¼ã表示ãã¦ã¿ã¾ãã
curves = makeFourierSeries[#, t, 200] & /@ fCs; Style[Map[Short, Rationalize[curves, 0.002]], 16] // TraditionalForm
ãã®ä¾ã®å ´åãã¨ãã¸æ½åºã®çµæã¯9åã®ç¹ç¾¤ã«å解ããã9åã®æ°å¼ã«ãªãã¾ããã
1ã¤ã®æ°å¼ã¯200次è¿ä¼¼ãè¡ã£ããããããã201ã®é
ãæã¡ã¾ãã(å
¨é¨è¡¨ç¤ºããã¨é·ãããã®ã§ãä¸è¨çµæã¯éä¸ãçç¥ãã¦è¡¨ç¤ºãã¦ãã¾ã)
ãããããã£ã¦ã¿ã
Coca-Cola
æå¤ã«ããocaãã®é¨åãé·ãç·åã¨ãªã£ã¦ãããå²ã¨æéãããã£ã¦ãã¾ãã
STARBUCKS COFFEE
å¤å´ã®3éã®åã¨ãSTãã1æ¬ã®ç·åã¨ãªã£ã¦ããã200次ã§ãåæãã¦ããªãããã§ãã
ããããªã¨ããããã¾ã«ã¬ãã¬ãã¨åãã®ãè¦ã¦ãã¦æ¥½ããã
Unilever
ãã´ãããªãè¤éã§ãããã¨ãã¸æ½åºã¯ãããããã¨ãããã¨ã§ããã¾ããã
åã
ã®ç·åã¯çãã®ã§åæã¯éãã§ãããããã«ãã¦ããã«ã©ãã«ã§ã¨ã¦ããããã
å®è¡ã«ã¤ãã¦
ãã®è¨äºã§ç´¹ä»ãã¦ããããã°ã©ã ã¯Mathematicaã§æ¸ããããã®ã§ããMathematicaã¯åç¨ãªã®ã§ããã®ç¶æ
ã ã¨æã£ã¦ãã人ããå®è¡ã§ãã¾ããã
ç·¨éã§ããªãã¨ããå½¢ã«éå®ããã¨ãç¡æã§æä¾ããã¦ããWolfram Mathematica Playerã¨ãWolfram CDF Playerã使ããã¨ã§å®è¡ããããã¨ãã§ãã¾ãã
ãã ãURLã次æ°ãªã©ãå¤æ´ã§ããå½¢ã«ã§ãããã©ããããããªãã®ã§ãããé
å¸ãã¦æ¬²ããã¨ãã声ãããã°ãã£ã¦ã¿ããã¨æãã¾ãã
2014/03/11 追è¨
@YVT ãããç»å輪éããã¼ãªã¨è¿ä¼¼ãã¦ãã®ç»åãããããè¿ããµã¼ãã¹ãä½æããã¦ãã¾ãããããã§çããèªç±ã«ãã¼ãªã¨è¿ä¼¼ã§ãã¾ãããããï¼
Contour
619åã®1000次æ¹ç¨å¼ã§ã¢ã¤ãã«ãã¹ã¿ã¼ pic.twitter.com/DQBLZx9tvN
— ããã (@aomoriringo) November 29, 2013
以ä¸ã§ããMathematicaç°å¢ã«è§¦ããæ¹ã¯ãã²ã試ããã ããã
2013/12/04 追è¨
ä»Mathematicaãç¡æã§ä½¿ç¨ã§ããã¨è©±é¡ã®RaspberryPiã§ãããRaspberryPiä¸ã§ãä¸è¨ã³ã¼ããåããã¨ã確èªãã¦ä¸ãã£ãæ¹ããã¾ããã