OpenCV STM32F7-Discovery-แƒ–แƒ” แƒ›แƒ” แƒ•แƒแƒ  แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒจแƒ”แƒ›แƒฅแƒ›แƒœแƒ”แƒšแƒ˜ Emboxแƒ“แƒ แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ แƒ•แƒ˜แƒกแƒแƒฃแƒ‘แƒ แƒ”แƒ‘ แƒ˜แƒ›แƒแƒ–แƒ”, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒแƒ•แƒแƒฎแƒ”แƒ แƒฎแƒ” OpenCV-แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ STM32746G แƒ“แƒแƒคแƒแƒ–แƒ”.

แƒ—แƒฃ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒแƒ™แƒ แƒ˜แƒคแƒ”แƒ‘แƒ— แƒ แƒแƒฆแƒแƒชแƒแƒก โ€žOpenCV STM32 แƒ“แƒแƒคแƒแƒ–แƒ”โ€œ, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒžแƒแƒ•แƒแƒ— แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ˜, แƒ•แƒ˜แƒœแƒช แƒ“แƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒแƒ› แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— STM32 แƒ“แƒแƒคแƒ”แƒ‘แƒ–แƒ” แƒแƒœ แƒกแƒฎแƒ•แƒ แƒ›แƒ˜แƒ™แƒ แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ”แƒ‘แƒ–แƒ”.
แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ•แƒ˜แƒ“แƒ”แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช, แƒกแƒแƒฎแƒ”แƒšแƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒ— แƒ•แƒ˜แƒ›แƒกแƒฏแƒ”แƒšแƒ”แƒ‘แƒ—, แƒฃแƒœแƒ“แƒ แƒแƒฉแƒ•แƒ”แƒœแƒแƒก แƒ แƒ แƒแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• (แƒงแƒ•แƒ”แƒšแƒ แƒ•แƒ˜แƒ“แƒ”แƒแƒจแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ” แƒ•แƒœแƒแƒฎแƒ”) STM32 แƒ“แƒแƒคแƒแƒ–แƒ”, แƒ™แƒแƒ›แƒ”แƒ แƒ˜แƒ“แƒแƒœ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒก แƒ“แƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒ”แƒ™แƒ แƒแƒœแƒ–แƒ” แƒฉแƒแƒœแƒ“แƒ, แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ แƒฎแƒ“แƒ”แƒ‘แƒแƒ“แƒ แƒแƒœ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ–แƒ”, แƒแƒœ แƒฃแƒคแƒ แƒ แƒ›แƒซแƒšแƒแƒ•แƒ  แƒ“แƒแƒคแƒ”แƒ‘แƒ–แƒ” (แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, Raspberry Pi).

แƒ แƒแƒขแƒแƒ› แƒแƒ แƒ˜แƒก แƒซแƒœแƒ”แƒšแƒ˜?

แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒžแƒฃแƒšแƒแƒ แƒแƒ‘แƒ แƒแƒ˜แƒฎแƒกแƒœแƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒ—, แƒ แƒแƒ› OpenCV แƒแƒ แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒžแƒแƒžแƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒฎแƒ”แƒ“แƒ•แƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ, แƒ แƒแƒช แƒ˜แƒ›แƒแƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒฃแƒคแƒ แƒ แƒ›แƒ”แƒขแƒ˜ แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ˜ แƒ˜แƒชแƒœแƒแƒ‘แƒก แƒ›แƒแƒก แƒ“แƒ แƒ“แƒ”แƒกแƒ™แƒขแƒแƒžแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒ–แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒ›แƒ˜แƒ™แƒ แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ–แƒ” แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒก. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒแƒขแƒแƒ› แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒžแƒแƒžแƒฃแƒšแƒแƒ แƒฃแƒšแƒ˜ แƒ›แƒ–แƒ แƒ แƒ”แƒชแƒ”แƒžแƒขแƒ”แƒ‘แƒ˜ แƒแƒ› แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒ“แƒแƒกแƒแƒญแƒ แƒ”แƒšแƒแƒ“?

แƒžแƒแƒขแƒแƒ แƒ แƒจแƒแƒ แƒ•แƒšแƒ”แƒ‘แƒ–แƒ” OpenCV-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒแƒ  แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœ:

  • แƒ—แƒฃ แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒก แƒจแƒ”แƒแƒ“แƒ’แƒ”แƒœแƒ— แƒ—แƒฃแƒœแƒ“แƒแƒช แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜แƒ—, แƒ˜แƒก แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒแƒ  แƒฏแƒ“แƒ”แƒ‘แƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” STM32F7Discovery-แƒ˜แƒก แƒคแƒšแƒ”แƒจ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜ (แƒ—แƒฃแƒœแƒ“แƒแƒช OS-แƒ˜แƒก แƒ’แƒแƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”) แƒซแƒแƒšแƒ˜แƒแƒœ แƒ“แƒ˜แƒ“แƒ˜ แƒ™แƒแƒ“แƒ˜แƒก แƒ’แƒแƒ›แƒ (แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒ”แƒ’แƒแƒ‘แƒแƒ˜แƒขแƒ˜ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ)
  • แƒ—แƒแƒ•แƒแƒ“ แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ C++-แƒจแƒ˜, แƒ แƒแƒช แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก
    • แƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ แƒžแƒแƒ–แƒ˜แƒขแƒ˜แƒฃแƒ แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ.แƒจ.)
    • LibC/Posix-แƒ˜แƒก แƒ›แƒชแƒ˜แƒ แƒ” แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ’แƒ•แƒฎแƒ•แƒ“แƒ”แƒ‘แƒ OS-แƒจแƒ˜ แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก - แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒžแƒšแƒฃแƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ แƒ“แƒ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ STL แƒจแƒแƒ‘แƒšแƒแƒœแƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ (แƒ•แƒ”แƒฅแƒขแƒแƒ แƒ˜ แƒ“แƒ แƒ.แƒจ.)

แƒžแƒแƒ แƒขแƒ˜แƒ แƒ”แƒ‘แƒ Embox-แƒจแƒ˜

แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ˜แƒกแƒแƒ›แƒ”แƒ‘แƒ , แƒ แƒแƒ˜แƒ›แƒ” แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒฃแƒš แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒจแƒ˜ แƒžแƒแƒ แƒขแƒ˜แƒ แƒ”แƒ‘แƒแƒ›แƒ“แƒ”, แƒ™แƒแƒ แƒ’แƒ˜ แƒ˜แƒ“แƒ”แƒแƒ, แƒ แƒแƒ› แƒกแƒชแƒแƒ“แƒแƒ— แƒ›แƒ˜แƒกแƒ˜ แƒแƒจแƒ”แƒœแƒ”แƒ‘แƒ แƒ˜แƒ› แƒคแƒแƒ แƒ›แƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒจแƒ˜แƒช แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ”แƒ‘แƒ›แƒ แƒ’แƒแƒœแƒ˜แƒ–แƒ แƒแƒฎแƒ”แƒก. แƒฉแƒ•แƒ”แƒœแƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒแƒ›แƒแƒจแƒ˜ แƒแƒ แƒแƒœแƒแƒ˜แƒ แƒ˜ แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒแƒ  แƒแƒ แƒ˜แƒก - แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— github, แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ แƒแƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ GNU/Linux-แƒ˜แƒก แƒฅแƒ•แƒ”แƒจ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ cmake-แƒ˜แƒ—.

แƒ™แƒแƒ แƒ’แƒ˜ แƒแƒ›แƒ‘แƒแƒ•แƒ˜ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› OpenCV แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒแƒก แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ, แƒ แƒแƒช แƒแƒแƒ“แƒ•แƒ˜แƒšแƒ”แƒ‘แƒก แƒžแƒแƒ แƒขแƒ˜แƒ แƒ”แƒ‘แƒแƒก. แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒ— แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒก แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒ— แƒ“แƒ แƒ•แƒœแƒแƒฎแƒแƒ•แƒ—, แƒ แƒแƒ›แƒ“แƒ”แƒœ แƒแƒ“แƒ’แƒ˜แƒšแƒก แƒ˜แƒ™แƒแƒ•แƒ”แƒ‘แƒก แƒ˜แƒกแƒ˜แƒœแƒ˜. แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ’แƒ แƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒชแƒแƒšแƒ™แƒ” แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒจแƒ˜.

> size lib/*so --totals
   text    data     bss     dec     hex filename
1945822   15431     960 1962213  1df0e5 lib/libopencv_calib3d.so
17081885     170312   25640 17277837    107a38d lib/libopencv_core.so
10928229     137640   20192 11086061     a928ed lib/libopencv_dnn.so
 842311   25680    1968  869959   d4647 lib/libopencv_features2d.so
 423660    8552     184  432396   6990c lib/libopencv_flann.so
8034733   54872    1416 8091021  7b758d lib/libopencv_gapi.so
  90741    3452     304   94497   17121 lib/libopencv_highgui.so
6338414   53152     968 6392534  618ad6 lib/libopencv_imgcodecs.so
21323564     155912  652056 22131532    151b34c lib/libopencv_imgproc.so
 724323   12176     376  736875   b3e6b lib/libopencv_ml.so
 429036    6864     464  436364   6a88c lib/libopencv_objdetect.so
6866973   50176    1064 6918213  699045 lib/libopencv_photo.so
 698531   13640     160  712331   ade8b lib/libopencv_stitching.so
 466295    6688     168  473151   7383f lib/libopencv_video.so
 315858    6972   11576  334406   51a46 lib/libopencv_videoio.so
76510375     721519  717496 77949390    4a569ce (TOTALS)

แƒ แƒแƒ’แƒแƒ แƒช แƒ‘แƒแƒšแƒ แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜แƒ“แƒแƒœ แƒฎแƒ”แƒ“แƒแƒ•แƒ—, .bss แƒ“แƒ .data แƒ“แƒ˜แƒ“ แƒแƒ“แƒ’แƒ˜แƒšแƒก แƒแƒ  แƒ˜แƒ™แƒแƒ•แƒ”แƒ‘แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ™แƒแƒ“แƒ˜ 70 แƒ›แƒ˜แƒ‘แƒแƒ˜แƒขแƒ–แƒ” แƒ›แƒ”แƒขแƒ˜แƒ. แƒœแƒแƒ—แƒ”แƒšแƒ˜แƒ, แƒ แƒแƒ› แƒ—แƒฃ แƒ”แƒก แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒš แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒกแƒ—แƒแƒœ, แƒ™แƒแƒ“แƒ˜ แƒ’แƒแƒฎแƒ“แƒ”แƒ‘แƒ แƒœแƒแƒ™แƒšแƒ”แƒ‘แƒ˜.

แƒจแƒ”แƒ•แƒ”แƒชแƒแƒ“แƒแƒ— แƒ แƒแƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ›แƒ”แƒขแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ’แƒแƒ“แƒแƒ•แƒแƒ’แƒ“แƒแƒ— แƒ˜แƒกแƒ”, แƒ แƒแƒ› แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒ˜ แƒ˜แƒงแƒแƒก (แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ’แƒแƒ›แƒแƒ•แƒ OpenCV แƒ•แƒ”แƒ แƒกแƒ˜แƒ), แƒแƒกแƒ” แƒ แƒแƒ›, แƒฉแƒ•แƒ”แƒœ แƒ•แƒฃแƒงแƒฃแƒ แƒ”แƒ‘แƒ— cmake .. -LA แƒ“แƒ แƒแƒคแƒชแƒ˜แƒ”แƒ‘แƒจแƒ˜ แƒ’แƒแƒ›แƒแƒ แƒ—แƒ” แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ แƒแƒช แƒ’แƒแƒ›แƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ.

        -DBUILD_opencv_java_bindings_generator=OFF 
        -DBUILD_opencv_stitching=OFF 
        -DWITH_PROTOBUF=OFF 
        -DWITH_PTHREADS_PF=OFF 
        -DWITH_QUIRC=OFF 
        -DWITH_TIFF=OFF 
        -DWITH_V4L=OFF 
        -DWITH_VTK=OFF 
        -DWITH_WEBP=OFF 
        <...>

> size lib/libopencv_core.a --totals
   text    data     bss     dec     hex filename
3317069   36425   17987 3371481  3371d9 (TOTALS)

แƒ”แƒ แƒ—แƒ˜แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ˜, แƒ›แƒ”แƒแƒ แƒ”แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ™แƒแƒ“แƒ˜แƒก แƒ–แƒแƒ›แƒ˜แƒก แƒ™แƒแƒ›แƒžแƒ˜แƒšแƒ”แƒ แƒ˜แƒก แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” (-Os). ~3 แƒ›แƒ˜แƒ‘แƒแƒ˜แƒขแƒ˜ แƒ™แƒแƒ“แƒ˜ แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ‘แƒ”แƒ•แƒ แƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฃแƒ™แƒ•แƒ” แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ›แƒ”แƒ“แƒก.

แƒ’แƒแƒฃแƒจแƒ•แƒ˜แƒ— แƒ”แƒ›แƒฃแƒšแƒแƒขแƒแƒ แƒจแƒ˜

แƒ”แƒ›แƒฃแƒšแƒแƒขแƒแƒ แƒ–แƒ” แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ แƒ‘แƒ”แƒ•แƒ แƒแƒ“ แƒฃแƒคแƒ แƒ แƒแƒ“แƒ•แƒ˜แƒšแƒ˜แƒ, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒฏแƒ”แƒ  แƒ“แƒแƒ แƒฌแƒ›แƒฃแƒœแƒ“แƒ˜แƒ—, แƒ แƒแƒ› แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก qemu-แƒ–แƒ”. แƒ แƒแƒ’แƒแƒ แƒช แƒ”แƒ›แƒฃแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒ, แƒ›แƒ” แƒแƒ•แƒ˜แƒ แƒฉแƒ˜แƒ” แƒ˜แƒœแƒขแƒ”แƒ’แƒ แƒแƒขแƒแƒ แƒ˜ / CP, แƒ แƒแƒ“แƒ’แƒแƒœ แƒฏแƒ”แƒ  แƒ”แƒ แƒ—แƒ˜, แƒ˜แƒก แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒ˜แƒก ARM แƒ“แƒ แƒ›แƒ”แƒแƒ แƒ”แƒช, Embox แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒแƒ› แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒ˜แƒก แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒฃแƒš แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒก.

Embox-แƒก แƒแƒฅแƒ•แƒก แƒ’แƒแƒ แƒ” แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ”แƒ‘แƒ˜แƒก แƒแƒ’แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ˜, แƒ แƒแƒ›แƒšแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ— OpenCV-แƒก แƒ›แƒแƒ“แƒฃแƒšแƒแƒ“ (แƒ’แƒแƒ“แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒก "แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜" แƒ™แƒแƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ—), แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ•แƒแƒ›แƒแƒขแƒ”แƒ‘ แƒ›แƒแƒ แƒขแƒ˜แƒ• แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒกแƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒฃแƒ แƒ”แƒ‘แƒ:

version.cpp:

#include <stdio.h>
#include <opencv2/core/utility.hpp>

int main() {
    printf("OpenCV: %s", cv::getBuildInformation().c_str());

    return 0;
}

แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒฌแƒงแƒแƒ‘แƒ— แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก, แƒ•แƒแƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒ— แƒ›แƒแƒก - แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒ›แƒแƒกแƒแƒšแƒแƒ“แƒœแƒ”แƒš แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒก.

root@embox:/#opencv_version                                                     
OpenCV: 
General configuration for OpenCV 4.0.1 =====================================
  Version control:               bd6927bdf-dirty

  Platform:
    Timestamp:                   2019-06-21T10:02:18Z
    Host:                        Linux 5.1.7-arch1-1-ARCH x86_64
    Target:                      Generic arm-unknown-none
    CMake:                       3.14.5
    CMake generator:             Unix Makefiles
    CMake build tool:            /usr/bin/make
    Configuration:               Debug

  CPU/HW features:
    Baseline:
      requested:                 DETECT
      disabled:                  VFPV3 NEON

  C/C++:
    Built as dynamic libs?:      NO
< ะ”ะฐะปัŒัˆะต ะธะดัƒั‚ ะฟั€ะพั‡ะธะต ะฟะฐั€ะฐะผะตั‚ั€ั‹ ัะฑะพั€ะบะธ -- ั ะบะฐะบะธะผะธ ั„ะปะฐะณะฐะผะธ ะบะพะผะฟะธะปะธั€ะพะฒะฐะปะพััŒ,
  ะบะฐะบะธะต ะผะพะดัƒะปะธ OpenCV ะฒะบะปัŽั‡ะตะฝั‹ ะฒ ัะฑะพั€ะบัƒ ะธ ั‚.ะฟ.>

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒœแƒแƒ‘แƒ˜แƒฏแƒ˜ แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ, แƒกแƒแƒกแƒฃแƒ แƒ•แƒ”แƒšแƒ˜แƒ แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ›แƒแƒ—แƒแƒ•แƒแƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ—แƒแƒ•แƒแƒ“ แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒกแƒแƒ˜แƒขแƒ–แƒ”. แƒ›แƒ” แƒ•แƒ˜แƒ แƒฉแƒ”แƒ• แƒกแƒแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ แƒ“แƒ”แƒขแƒ”แƒฅแƒขแƒแƒ แƒ˜.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒแƒ“แƒœแƒแƒ• แƒ’แƒแƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒ˜แƒงแƒ, แƒ แƒแƒ› แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ”แƒฉแƒ˜แƒœแƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒฉแƒแƒ แƒฉแƒ แƒ‘แƒฃแƒคแƒ”แƒ แƒจแƒ˜. แƒ”แƒก แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒ”แƒ™แƒ”แƒ—แƒ”แƒ‘แƒ˜แƒœแƒ, แƒ แƒแƒ“แƒ’แƒแƒœ. แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ imshow() แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒฎแƒแƒขแƒ•แƒ QT, GTK แƒ“แƒ Windows แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒช, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒแƒ“ แƒแƒ  แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ STM32-แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒจแƒ˜. แƒกแƒ˜แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒ”แƒจแƒ˜, QT แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒแƒก STM32F7Discovery-แƒ–แƒ”, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒกแƒฎแƒ•แƒ แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒฃแƒšแƒ˜ ๐Ÿ™‚

แƒ›แƒแƒ™แƒšแƒ” แƒ“แƒแƒ–แƒฃแƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒ—แƒฃ แƒ แƒแƒ›แƒ”แƒš แƒคแƒแƒ แƒ›แƒแƒขแƒจแƒ˜แƒ แƒจแƒ”แƒœแƒแƒฎแƒฃแƒšแƒ˜ แƒ™แƒ˜แƒ“แƒ”แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ”แƒขแƒ”แƒฅแƒขแƒแƒ แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜, แƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— แƒกแƒฃแƒ แƒแƒ—แƒก.

OpenCV STM32F7-Discovery-แƒ–แƒ”

แƒแƒ แƒ˜แƒ’แƒ˜แƒœแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒฃแƒ แƒแƒ—แƒ˜

OpenCV STM32F7-Discovery-แƒ–แƒ”

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก STM32F7Discovery-แƒ–แƒ”

32F746GDISCOVERY-แƒ–แƒ” แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒแƒ›แƒ แƒ—แƒฃ แƒ˜แƒ› แƒ’แƒ–แƒ˜แƒ—

  1. 320 KiB แƒแƒžแƒ”แƒ แƒแƒขแƒ˜แƒฃแƒšแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ
  2. 1 MiB แƒคแƒšแƒ”แƒจ แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก
  3. 8 MiB SDRAM
  4. 16 MiB QSPI NAND Flash
  5. microSD แƒ‘แƒแƒ แƒแƒ—แƒ˜แƒก แƒกแƒšแƒแƒขแƒ˜

SD แƒ‘แƒแƒ แƒแƒ—แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒแƒฎแƒแƒ“, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ”แƒฅแƒกแƒขแƒจแƒ˜ แƒ”แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ.
แƒ“แƒ˜แƒกแƒžแƒšแƒ”แƒ˜แƒก แƒ’แƒแƒ แƒฉแƒ”แƒ•แƒแƒ“แƒแƒ‘แƒแƒ 480ร—272, แƒ แƒแƒช แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒคแƒ แƒ”แƒ˜แƒ›แƒ‘แƒฃแƒคแƒ”แƒ แƒฃแƒšแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ 522 240 แƒ‘แƒแƒ˜แƒขแƒ˜ 32 แƒ‘แƒ˜แƒขแƒ˜แƒก แƒกแƒ˜แƒฆแƒ แƒ›แƒ”แƒ–แƒ”, แƒ”.แƒ˜. แƒ”แƒก แƒแƒฆแƒ”แƒ›แƒแƒขแƒ”แƒ‘แƒ RAM-แƒ˜แƒก แƒ–แƒแƒ›แƒแƒก, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒคแƒ แƒ”แƒ˜แƒ›แƒ‘แƒฃแƒคแƒ”แƒ แƒ˜ แƒ“แƒ แƒ’แƒ แƒแƒ•แƒ (แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒแƒญแƒ˜แƒ แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก OpenCV-แƒกแƒ—แƒ•แƒ˜แƒก, แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ“แƒแƒ›แƒฎแƒ›แƒแƒ แƒ” แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒแƒฎแƒแƒ“) แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ“แƒ”แƒ‘แƒ SDRAM-แƒจแƒ˜, แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ“แƒแƒœแƒแƒ แƒฉแƒ”แƒœแƒ˜ (แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒกแƒขแƒ”แƒ™แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒกแƒฎแƒ•แƒ แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก). ) แƒ’แƒแƒ“แƒแƒ•แƒ RAM-แƒจแƒ˜.

แƒ—แƒฃ แƒแƒ•แƒ˜แƒฆแƒ”แƒ‘แƒ— STM32F7Discovery-แƒ˜แƒก แƒ›แƒ˜แƒœแƒ˜แƒ›แƒแƒšแƒฃแƒ  แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒก (แƒ’แƒแƒ•แƒแƒ’แƒ“แƒแƒ— แƒ›แƒ—แƒ”แƒšแƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜, แƒงแƒ•แƒ”แƒšแƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ, แƒ“แƒแƒ•แƒฎแƒแƒขแƒแƒ— แƒกแƒขแƒ”แƒ™แƒ”แƒ‘แƒ˜ แƒ แƒแƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒ แƒ.แƒจ.) แƒ“แƒ แƒ“แƒแƒ•แƒแƒ›แƒแƒขแƒแƒ— OpenCV แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒ—, แƒกแƒแƒญแƒ˜แƒ แƒ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜:

   text    data     bss     dec     hex filename
2876890  459208  312736 3648834  37ad42 build/base/bin/embox

แƒ›แƒแƒ—แƒ—แƒ•แƒ˜แƒก, แƒ•แƒ˜แƒœแƒช แƒ™แƒแƒ แƒ’แƒแƒ“ แƒแƒ  แƒ˜แƒชแƒœแƒแƒ‘แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒกแƒแƒ“ แƒ›แƒ˜แƒ“แƒ˜แƒก, แƒแƒ•แƒฃแƒฎแƒกแƒœแƒ˜: in .text ะธ .rodata แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒ”แƒ‘แƒ˜ (แƒฃแƒฎแƒ”แƒจแƒแƒ“ แƒ แƒแƒ› แƒ•แƒ—แƒฅแƒ•แƒแƒ—, แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜) แƒ“แƒ”แƒ•แƒก .data แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒชแƒ•แƒแƒšแƒ”แƒ‘แƒแƒ“แƒ˜แƒ, .bss แƒแƒ แƒ˜แƒก "แƒ’แƒแƒฃแƒฅแƒ›แƒ”แƒ‘แƒฃแƒšแƒ˜" แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒกแƒแƒช, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒแƒ›แƒ˜แƒกแƒ, แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒแƒ“แƒ’แƒ˜แƒšแƒ˜ (แƒ”แƒก แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ "แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒก" RAM-แƒจแƒ˜).

แƒ™แƒแƒ แƒ’แƒ˜ แƒแƒ›แƒ‘แƒแƒ•แƒ˜ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› .data/.bss แƒฃแƒœแƒ“แƒ แƒ›แƒแƒ”แƒ แƒ’แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ—แƒแƒœ .text แƒฃแƒ‘แƒ”แƒ“แƒฃแƒ แƒ”แƒ‘แƒ แƒ˜แƒก แƒแƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ 1 MiB แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒ. แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ“แƒ›แƒแƒแƒ’แƒ“แƒ”แƒก .text แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒ”แƒ—, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, SD แƒ‘แƒแƒ แƒแƒ—แƒ˜แƒ“แƒแƒœ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกแƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› fruits.png แƒ˜แƒฌแƒแƒœแƒ˜แƒก แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— 330 KiB, แƒแƒกแƒ” แƒ แƒแƒ› แƒ”แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒแƒก แƒแƒ  แƒ’แƒแƒ“แƒแƒญแƒ แƒ˜แƒก: แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ .text แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ OpenCV แƒ™แƒแƒ“แƒ˜แƒกแƒ’แƒแƒœ.

แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒ“แƒแƒ แƒฉแƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒ แƒแƒ› - แƒ™แƒแƒ“แƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜แƒก แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ QSPI Flash-แƒ–แƒ” (แƒ›แƒแƒก แƒแƒฅแƒ•แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒแƒ•แƒขแƒแƒ‘แƒฃแƒกแƒ–แƒ” แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒขแƒแƒœแƒแƒ“, แƒ แƒแƒ—แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒก แƒจแƒ”แƒ”แƒซแƒšแƒแƒก แƒฃแƒจแƒฃแƒแƒšแƒแƒ“ แƒแƒ› แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ). แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒฌแƒแƒ แƒ›แƒแƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ: แƒฏแƒ”แƒ  แƒ”แƒ แƒ—แƒ˜, QSPI แƒคแƒšแƒ”แƒจ แƒ“แƒ แƒแƒ˜แƒ•แƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ แƒแƒ  แƒแƒ แƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒแƒœแƒแƒ•แƒ” (แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒชแƒแƒš-แƒชแƒแƒšแƒ™แƒ” แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ แƒฃแƒ™แƒ”แƒ‘แƒ˜แƒก แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜) แƒ“แƒ แƒ›แƒ”แƒแƒ แƒ”แƒช, แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒ  แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒ› แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก โ€žแƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒโ€œ แƒœแƒแƒชแƒœแƒแƒ‘แƒ˜ แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜.

แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, แƒ’แƒแƒ“แƒแƒฌแƒงแƒ“แƒ QSPI-แƒจแƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒ“แƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒก แƒกแƒแƒญแƒ˜แƒ แƒ แƒแƒ แƒแƒ‘แƒ˜แƒ—แƒก TFTP-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—.

แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜

แƒแƒ› แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ˜แƒก Embox-แƒ–แƒ” แƒžแƒแƒ แƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ“แƒ”แƒ แƒ’แƒแƒฉแƒœแƒ“แƒ แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— แƒ”แƒ แƒ—แƒ˜ แƒฌแƒšแƒ˜แƒก แƒฌแƒ˜แƒœ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒแƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ’แƒแƒ“แƒแƒ˜แƒ“แƒ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒ. แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ›แƒแƒ—แƒ’แƒแƒœแƒ˜แƒ libstdc++ แƒ“แƒ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒจแƒแƒ‘แƒšแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ. Embox-แƒจแƒ˜ C++-แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ แƒกแƒชแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒก, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒแƒฅ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ•แƒ˜แƒขแƒงแƒ•แƒ˜, แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœ แƒ›แƒแƒ•แƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ— แƒแƒ› แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒก แƒ›แƒ˜แƒฆแƒฌแƒ”แƒ•แƒ แƒ˜แƒ› แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒ—, แƒ แƒแƒ› แƒแƒ› แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒ› แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก ๐Ÿ™‚

แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒฏแƒแƒ›แƒจแƒ˜, แƒ”แƒก แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ“แƒแƒซแƒšแƒ”แƒฃแƒš แƒ˜แƒฅแƒœแƒ (แƒกแƒฃแƒš แƒ›แƒชแƒ˜แƒ แƒ” แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜แƒ OpenCV-แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก) แƒ“แƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒ’แƒแƒ˜แƒฅแƒชแƒ. แƒ“แƒแƒคแƒแƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ 40 แƒ’แƒ แƒซแƒ”แƒšแƒ˜ แƒฌแƒแƒ›แƒ˜ Canny แƒคแƒ˜แƒšแƒขแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“. แƒ”แƒก, แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, แƒซแƒแƒšแƒ˜แƒแƒœ แƒ’แƒ แƒซแƒ”แƒšแƒ˜แƒ (แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ›แƒแƒกแƒแƒ–แƒ แƒ”แƒ‘แƒ”แƒ‘แƒ˜, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ›แƒแƒฎแƒ“แƒ”แƒก แƒแƒ› แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ˜แƒก แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒแƒชแƒ˜แƒ, แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒชแƒแƒšแƒ™แƒ” แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ“แƒแƒฌแƒ”แƒ แƒ).

OpenCV STM32F7-Discovery-แƒ–แƒ”

แƒ—แƒฃแƒ›แƒชแƒ, แƒจแƒฃแƒแƒšแƒ”แƒ“แƒฃแƒ แƒ˜ แƒ›แƒ˜แƒ–แƒแƒœแƒ˜ แƒ˜แƒงแƒ แƒžแƒ แƒแƒขแƒแƒขแƒ˜แƒžแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก OpenCV-แƒ˜แƒก STM32-แƒ–แƒ” แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒคแƒฃแƒœแƒ“แƒแƒ›แƒ”แƒœแƒขแƒฃแƒ  แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก, แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒแƒ“, แƒ”แƒก แƒ›แƒ˜แƒ–แƒแƒœแƒ˜ แƒ›แƒ˜แƒฆแƒฌแƒ”แƒฃแƒšแƒ˜แƒ, แƒฐแƒแƒ!

tl;dr: แƒœแƒแƒ‘แƒ˜แƒฏ แƒœแƒแƒ‘แƒ˜แƒฏ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜

0: แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— Embox แƒฌแƒงแƒแƒ แƒแƒ”แƒ‘แƒ˜, แƒแƒกแƒ”:

    git clone https://github.com/embox/embox && cd ./embox

1: แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช QSPI แƒคแƒšแƒ”แƒจ แƒ“แƒ แƒแƒ˜แƒ•แƒก โ€žแƒ’แƒแƒ‘แƒ แƒฌแƒงแƒ˜แƒœแƒแƒ•แƒกโ€œ.

    make confload-arm/stm32f7cube

แƒแƒฎแƒšแƒ แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒแƒ— แƒฅแƒกแƒ”แƒšแƒ˜, แƒ แƒแƒ“แƒ’แƒแƒœ. แƒฉแƒ•แƒ”แƒœ แƒแƒ•แƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒ— แƒกแƒฃแƒ แƒแƒ—แƒก TFTP-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—. แƒ“แƒแƒคแƒ˜แƒก แƒ“แƒ แƒฐแƒแƒกแƒขแƒ˜แƒก IP แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— conf/rootfs/แƒฅแƒกแƒ”แƒšแƒ˜.

แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜:

iface eth0 inet static
    address 192.168.2.2
    netmask 255.255.255.0
    gateway 192.168.2.1
    hwaddress aa:bb:cc:dd:ee:02

gateway - แƒฐแƒแƒกแƒขแƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜, แƒกแƒแƒ˜แƒ“แƒแƒœแƒแƒช แƒ˜แƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ‘แƒ แƒกแƒฃแƒ แƒแƒ—แƒ˜, address - แƒ’แƒแƒ›แƒ’แƒ”แƒแƒ‘แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜.

แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒ— แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒก:

    make

2: แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒฉแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ (แƒ‘แƒแƒ“แƒ˜แƒจแƒก แƒ’แƒ˜แƒฎแƒ“แƒ˜แƒ— แƒกแƒ˜แƒขแƒงแƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก) แƒ“แƒแƒคแƒแƒ–แƒ” - แƒแƒฅ แƒแƒ แƒแƒคแƒ”แƒ แƒ˜แƒ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— แƒ”แƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒกแƒฎแƒ•แƒ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก STM32F7Discovery. แƒ—แƒฃ แƒแƒ  แƒ˜แƒชแƒ˜แƒ— แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— แƒ”แƒก, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒ— แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒแƒฅ.
3: แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒ— OpenCV-แƒกแƒ—แƒ•แƒ˜แƒก.

    make confload-platform/opencv/stm32f7discovery
    make

4: แƒแƒ›แƒแƒœแƒแƒฌแƒ”แƒ แƒ˜ ELF แƒกแƒ”แƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒ“แƒแƒœ QSPI-แƒ–แƒ” แƒ“แƒแƒกแƒแƒฌแƒ”แƒ แƒแƒ“ qspi.bin-แƒ–แƒ”

    arm-none-eabi-objcopy -O binary build/base/bin/embox build/base/bin/qspi.bin 
        --only-section=.text --only-section=.rodata 
        --only-section='.ARM.ex*' 
        --only-section=.data

แƒแƒ แƒ˜แƒก แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ˜ conf แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ›แƒแƒก แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก, แƒแƒกแƒ” แƒ แƒแƒ› แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ

    ./conf/qspi_objcopy.sh # ะัƒะถะฝั‹ะน ะฑะธะฝะฐั€ะฝะธะบ -- build/base/bin/qspi.bin

5: tftp-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— qspi.bin.bin QSPI แƒคแƒšแƒ”แƒจ แƒ“แƒ แƒแƒ˜แƒ•แƒจแƒ˜. แƒฐแƒแƒกแƒขแƒ–แƒ”, แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒ“แƒแƒแƒ™แƒแƒžแƒ˜แƒ แƒ”แƒ— qspi.bin tftp แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒซแƒ˜แƒ แƒ”แƒฃแƒš แƒกแƒแƒฅแƒแƒฆแƒแƒšแƒ“แƒ”แƒจแƒ˜ (แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• /srv/tftp/ แƒแƒœ /var/lib/tftpboot/; แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒžแƒแƒžแƒฃแƒšแƒแƒ แƒฃแƒš แƒ“แƒ˜แƒกแƒขแƒ แƒ˜แƒ‘แƒฃแƒชแƒ˜แƒ”แƒ‘แƒจแƒ˜, แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ• แƒ”.แƒฌ. tftpd แƒแƒœ tftp-hpa, แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒแƒ™แƒ”แƒ—แƒแƒ— systemctl start tftpd.service แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒ).

    # ะฒะฐั€ะธะฐะฝั‚ ะดะปั tftpd
    sudo cp build/base/bin/qspi.bin /srv/tftp
    # ะฒะฐั€ะธะฐะฝั‚ ะดะปั tftp-hpa
    sudo cp build/base/bin/qspi.bin /var/lib/tftpboot

Embox-แƒ–แƒ” (แƒแƒœแƒฃ แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒจแƒ˜) แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ (แƒ•แƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ‘แƒ—, แƒ แƒแƒ› แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒก แƒแƒฅแƒ•แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜ 192.168.2.1):

    embox> qspi_loader qspi.bin 192.168.2.1

6: แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ— goto แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ "แƒ’แƒแƒ“แƒแƒฎแƒขแƒ”แƒ—" QSPI แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒจแƒ˜. แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒแƒ“แƒ’แƒ˜แƒšแƒ›แƒ“แƒ”แƒ‘แƒแƒ แƒ”แƒแƒ‘แƒ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ“แƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒฃแƒ แƒแƒ—แƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— แƒ”แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒ— mem 0x90000000 (แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜ แƒฏแƒ“แƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒแƒ แƒ” 32-แƒ‘แƒ˜แƒขแƒ˜แƒแƒœ แƒกแƒ˜แƒขแƒงแƒ•แƒแƒจแƒ˜); แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒ“แƒแƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒกแƒขแƒ”แƒ™แƒ˜แƒก แƒ“แƒ แƒแƒจแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒจแƒ•แƒœแƒ -s, แƒกแƒขแƒ”แƒ™แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜ แƒแƒ แƒ˜แƒก 0x90000000, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“:

    embox>mem 0x90000000
    0x90000000:     0x20023200  0x9000c27f  0x9000c275  0x9000c275
                      โ†‘           โ†‘
              ัั‚ะพ ะฐะดั€ะตั    ัั‚ะพ  ะฐะดั€ะตั 
                ัั‚ัะบะฐ        ะฟะตั€ะฒะพะน
                           ะธะฝัั‚ั€ัƒะบั†ะธะธ

    embox>goto -i 0x9000c27f -s 0x20023200 # ะคะปะฐะณ -i ะฝัƒะถะตะฝ ั‡ั‚ะพะฑั‹ ะทะฐะฟั€ะตั‚ะธั‚ัŒ ะฟั€ะตั€ั‹ะฒะฐะฝะธั ะฒะพ ะฒั€ะตะผั ะธะฝะธั†ะธะฐะปะธะทะฐั†ะธะธ ัะธัั‚ะตะผั‹

    < ะะฐั‡ะธะฝะฐั ะพั‚ััŽะดะฐ ะฑัƒะดะตั‚ ะฒั‹ะฒะพะด ะฝะต ะทะฐะณั€ัƒะทั‡ะธะบะฐ, ะฐ ะพะฑั€ะฐะทะฐ ั OpenCV >

7: แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ

    embox> edges 20

แƒ“แƒ แƒ˜แƒกแƒ˜แƒแƒ›แƒแƒ•แƒœแƒ”แƒ— แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ˜แƒก 40 แƒฌแƒแƒ›แƒ˜แƒแƒœแƒ˜ แƒซแƒ˜แƒ”แƒ‘แƒ˜แƒ— ๐Ÿ™‚

แƒ—แƒฃ แƒ แƒแƒ›แƒ” แƒแƒ แƒแƒกแƒฌแƒแƒ แƒ”แƒ“ แƒ›แƒแƒฎแƒ“แƒ”แƒ‘แƒ - แƒฉแƒแƒฌแƒ”แƒ แƒ”แƒ— แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ˜ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒกแƒแƒชแƒแƒ•แƒ˜, แƒแƒœ แƒ“แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก แƒกแƒ˜แƒแƒจแƒ˜ [แƒ”แƒš.แƒคแƒแƒกแƒขแƒ˜แƒ— แƒ“แƒแƒชแƒฃแƒšแƒ˜แƒ], แƒแƒœ แƒแƒฅ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒจแƒ˜.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ