{"id":275295,"date":"2016-03-02T03:31:02","date_gmt":"2016-03-02T00:31:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=275295"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=275295","title":{"rendered":"ATmega16 + DS18B20 + LED + Matlab\/Simulink = AR"},"content":{"rendered":"<p>       <img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/e2a\/4a8\/d70\/e2a4a8d7092845e082baee85d185ebd2.bmp\"\/>\u0417\u0430\u0434\u0443\u043c\u0430\u043b \u044f \u043a\u0430\u043a-\u0442\u043e \u043f\u043e\u0438\u0433\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0430\u0442\u0447\u0438\u043a\u0430\u043c\u0438 <a href=\"https:\/\/datasheets.maximintegrated.com\/en\/ds\/DS18B20.pdf\">DS18B20<\/a>. \u0414\u0430 \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b (\u0447\u0442\u043e \u0443\u043c\u0435\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439), \u043d\u043e \u0438 \u043a\u0430\u043a-\u0442\u043e \u0435\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u0412\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0438\u0434\u0435\u044f. \u0421\u0442\u0430\u0432\u0438\u043c \u0432\u0435\u0431\u043a\u0430\u043c\u0435\u0440\u0443. \u0417\u0430\u0436\u0438\u0433\u0430\u0435\u043c \u0441\u0432\u0435\u0442\u0438\u043a \u043d\u0430 \u0447\u0435\u0442\u043d\u043e\u043c \u043a\u0430\u0434\u0440\u0435, \u043d\u0430 \u043d\u0435 \u0447\u0435\u0442\u043d\u043e\u043c \u2014 \u0442\u0443\u0448\u0438\u043c. \u0412\u044b\u0447\u0438\u0442\u0430\u0435\u043c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u2014 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u043f\u044b\u0448\u043a\u0430. \u041f\u043e \u043d\u0435\u0439 \u0438 \u0438\u0449\u0435\u043c \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0447\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435. \u0410 \u0434\u0430\u043b\u044c\u0448\u0435 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430. \u041d\u0443 \u0438 \u0432\u0441\u0435 \u044d\u0442\u043e \u0432 \u0441\u0438\u043c\u0443\u043b\u0438\u043d\u043a\u0435. \u041f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u0447\u043a\u0438. \u0410 \u0434\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0436\u0435\u043b\u0430\u0435\u0442 \u2014 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438.<br \/>  <a name=\"habracut\"><\/a><br \/>  <br clear=\"left\"\/>  <\/p>\n<h1>\u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0430<\/h1>\n<p>  \u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u043a\u0440\u0430\u0439\u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u0430. \u0421\u0435\u0440\u0434\u0446\u0435\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f ATmega16. \u0412\u0441\u0435 \u0434\u0430\u0442\u0447\u0438\u043a\u0438 DS18B20 \u0432\u0438\u0441\u044f\u0442 \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u0438\u043d\u0435 (\u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430 PB0 \u043f\u043e\u0440\u0442\u0430 PORTB). \u0421\u0430\u043c \u043f\u0438\u043d \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u0442 \u043a \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u044e \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440 4.7 \u043a\u041e\u043c. \u0421\u0445\u0435\u043c\u0430 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u0430. \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u0430.<\/p>\n<p>  <a href=\"https:\/\/habrastorage.org\/files\/1d6\/87f\/7dd\/1d687f7ddbbc4e29858d20b4ceebcfe7.bmp\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/1d6\/87f\/7dd\/1d687f7ddbbc4e29858d20b4ceebcfe7.bmp\"\/><\/a><\/p>\n<p>  \u0412\u0441\u0435 LED\u044b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u043a \u043f\u043e\u0440\u0442\u0443 PORTA \u0447\u0435\u0440\u0435\u0437 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u044b. \u0421\u0435\u0440\u044b\u0439 \u043f\u043e\u043b\u0438\u0433\u043e\u043d \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u044b\u0439 LED \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044f\u0437\u0430\u043d \u0441 DS18B20. \u0412\u044b\u0432\u043e\u0434 \u0440\u0435\u0441\u0435\u0442 \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u0442 \u043a \u0432\u044b\u0441\u043e\u043a\u043e\u043c\u0443 \u0447\u0435\u0440\u0435\u0437 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440 \u0432 10 \u043a\u041e\u043c \u0434\u043b\u044f \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430 \u0438\u0437-\u0437\u0430 \u043d\u0430\u0432\u043e\u0434\u043e\u043a. \u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0432\u0430\u0440\u0446\u0435\u043c \u0432 16 \u041c\u0413\u0446. \u0421\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043b\u0438\u0436\u0435 \u043a \u0432\u044b\u0432\u043e\u0434\u0430\u043c. \u041d\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 \u0435\u043c\u043a\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435. \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0444\u044a\u044e\u0437\u044b. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0432\u0435\u0434\u0435\u043d\u044b \u0440\u0430\u0437\u044a\u0435\u043c\u044b ICP (\u0434\u043b\u044f \u0437\u0430\u043b\u0438\u0432\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438) \u0438 UART \u0434\u043b\u044f \u00ab\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u00bb. \u0401\u043c\u043a\u043e\u0441\u0442\u0438 \u04211 (\u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442 10 \u043c\u043a\u0424) \u0438 C2 (\u043a\u0435\u0440\u0430\u043c\u0438\u043a\u0430 100 \u043d\u0424). \u0421\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0431\u043b\u0438\u0436\u0435 \u043a \u0432\u044b\u0432\u043e\u0434\u0430\u043c \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0441\u0431\u0440\u043e\u0441\u043e\u0432 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0421\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u0432 \u0441\u0431\u043e\u0440\u0435<\/b><\/p>\n<div class=\"spoiler_text\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/20a\/9b3\/6fa\/20a9b36fade242d9b70e10be068168ad.jpg\"\/><\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0427\u0442\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0435\u0440\u044b\u0439 \u043f\u043e\u043b\u0438\u0433\u043e\u043d<\/b><\/p>\n<div class=\"spoiler_text\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/d61\/bca\/b30\/d61bcab30e4041e6977ff8d55687d58a.jpg\"\/><\/div>\n<\/div>\n<p>  <\/p>\n<h1>\u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 + \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b<\/h1>\n<p>  \u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043f\u0438\u0441\u0430\u043b\u0430\u0441\u044c \u043d\u0430 C \u0432 <a href=\"http:\/\/www.atmel.com\/Microsite\/atmel-studio\/\">Atmel Studio 7<\/a> IDE. \u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0432\u044b\u043b\u043e\u0436\u0435\u043d\u044b \u043d\u0430 <a href=\"https:\/\/github.com\/viktorpanasiuk\/WebCamTemp\/tree\/master\/Atmel%20Studio%207\">GitHub<\/a>. \u041a\u043e\u0434 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c.<br \/>  \u041f\u0440\u043e\u0435\u043a\u0442 \u0440\u0430\u0437\u0431\u0438\u0442 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0440\u043e\u0432\u043d\u0435\u0439 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u0438:  <\/p>\n<ul>\n<li><b>Hardware<\/b> \u2014 \u043d\u0430\u0438\u043d\u0438\u0437\u0448\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u043a \u0436\u0435\u043b\u0435\u0437\u0443. \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0435\u0439 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.<\/li>\n<li><b>Middleware<\/b> \u2014 \u0441\u0432\u044f\u0437\u0443\u044e\u0449\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043c\u0435\u0436\u0434\u0443 Hardware \u0438 Drivers. \u041a \u043f\u0440\u0438\u043c\u0435\u0440\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 1-Wire.<\/li>\n<li><b>Drivers<\/b> \u2014 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432. \u041a \u043f\u0440\u0438\u043c\u0435\u0440\u0443 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u043e\u0439 DS18B20.<\/li>\n<li><b>Application<\/b> \u2014 \u043d\u0430\u0438\u0432\u044b\u0441\u0448\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u043f\u043e UART.<\/li>\n<\/ul>\n<p>  \u0411\u0435\u0433\u043b\u043e \u043f\u0440\u043e\u0431\u0435\u0436\u0438\u043c\u0441\u044f \u043f\u043e main \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0412\u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u043e\u0438\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 ROM \u0430\u0434\u0440\u0435\u0441\u043e\u0432. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0447\u0442\u043e\u0431\u044b \u0432 \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0431\u044b\u043b \u0430\u0434\u0440\u0435\u0441 \u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u043c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u043c (\u0432\u0438\u0441\u044f\u0449\u0435\u043c \u043d\u0430 PA0 \u043f\u043e\u0440\u0442\u0430 PORTA) \u043d\u0443 \u0438 \u0442.\u0434. \u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f ROM \u0435\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044f <b>sendROMToUART<\/b>. \u041d\u0443\u0436\u043d\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0447\u0442\u043e \u0434\u0430\u0442\u0447\u0438\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0430 \u0448\u0438\u043d\u0435 \u043e\u0434\u0438\u043d, \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 \u043a\u043e\u043b\u043b\u0438\u0437\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u043e\u0432.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">main<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">int main(void) {\t \tconst uint8_t ROM[][sizeof(ROM_T)] = \/* ROM array *\/ \t{ \t\t{0x26, 0x00, 0x00, 0x04, 0x4B, 0x15, 0x89, 0x28}, \/\/ 0 \t\t{0x71, 0x00, 0x00, 0x04, 0x4A, 0xC0, 0x65, 0x28}, \/\/ 1 \t\t{0xA5, 0x00, 0x00, 0x04, 0x4A, 0xCB, 0xCE, 0x28}, \/\/ 2 \t\t{0x41, 0x00, 0x00, 0x04, 0x4A, 0xAC, 0x65, 0x28}, \/\/ 3 \t\t{0x22, 0x00, 0x00, 0x04, 0x4B, 0x06, 0x0D, 0x28}, \/\/ 4 \t\t{0x86, 0x00, 0x00, 0x04, 0x4A, 0xF6, 0x46, 0x28}  \/\/ 5 \t}; \t \tuint8_t nDevices = sizeof(ROM) \/ sizeof(ROM_T); \/* Number of DS18B20 devices *\/ \t \tinitUART(MYUBRR); \/* Initialization of UART with appropriate baudrate *\/ \tinitTimer0(); \/* Initialization of Timer\/counter0 *\/ \tinitLED(nDevices); \/* Initialization of LEDs *\/ \t \t{ \/* DS18B20s initialization *\/ \t\tuint8_t nDevices = sizeof(ROM) \/ sizeof(ROM_T); \/* Number of DS18B20 devices *\/ \t\tROM_T *pROM = (ROM_T *)&ROM; \/* Pointer to ROM array *\/ \t\t \t\tinitDQ(); \/* Initialization of DQ pin *\/ \t\t \t\twhile (nDevices--) \/* For all DS18B20 *\/ \t\t\tinitDS18B20(pROM++, RESOLUTION_11BIT); \/* Initialization of DS18B20 with appropriate resolution *\/ \t} \t \tsei(); \/* Global enable interrupts *\/ \t \twhile (1) \/* Infinite loop *\/ \t{ \t\tsendTemperatureToUART((ROM_T *)&ROM, nDevices); \/* Execute function routine *\/ \t} } <\/code><\/pre>\n<\/div>\n<\/div>\n<p>  \u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0435\u0442 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0438 \u0438 \u0441\u0430\u043c\u0438\u0445 DS-\u043e\u043a \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u041e\u0442 \u043d\u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043f\u0435\u0440\u0438\u043e\u0434 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b. \u0414\u043b\u044f 11 \u0431\u0438\u0442 \u044d\u0442\u043e 375 \u043c\u0441. \u0412 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c \u0446\u0438\u043a\u043b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0431\u0435\u0441\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e \u0432\u044b\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0443 \u0441 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u0438 \u0448\u043b\u0435\u0442 \u0435\u0435 \u043f\u043e UART.<\/p>\n<p>  \u0420\u0430\u0431\u043e\u0442\u0430 \u0441\u043e \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\u0445. \u041f\u043e UART \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 ID \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430 2 \u0440\u0430\u0437\u0430 \u043f\u043e\u0434\u0440\u044f\u0434 \u043d\u0430 \u0447\u0435\u0442\u043d\u043e\u043c \u0438 \u043d\u0435\u0447\u0435\u0442\u043d\u043e\u043c \u043a\u0430\u0434\u0440\u0435. \u041d\u0430 \u043f\u0435\u0440\u0432\u043e\u043c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434 \u0437\u0430\u0436\u0438\u0433\u0430\u0435\u0442\u0441\u044f. \u0422\u0443\u0448\u0438\u0442 \u0435\u0433\u043e \u0442\u0430\u0439\u043c\u0435\u0440 \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f (\u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 15 \u043c\u0441). \u0412\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u043c. \u0422\u0430\u0439\u043c\u0435\u0440 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 CTC \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u043b\u043e \u0440\u0430\u0437 \u0432 1 \u043c\u0441.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u043a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">volatile uint8_t ledID = 0; \/* Current ledID value *\/ volatile uint8_t ledID_prev = 255;  \/* Previous ledID value *\/ volatile uint8_t duration = FLASH_DURATION; \/* Flash duration value *\/  ISR(USART_RXC_vect) \/* UART interrupt handler *\/ { \tledID = UDR; \/* Assign ledID to receive via UART value *\/ \tif (ledID != ledID_prev) \/* If current ledID equal to previous value *\/ \t{ \t\tturnOnLED(ledID); \/* Turn on the ledID LED *\/ \t\ttimer0Start(); \/* Start Timer0 *\/ \t\tledID_prev = ledID; \/* Previous ledID assign to current *\/ \t\tduration = FLASH_DURATION; \/* Update LED flash duration *\/ \t} }  ISR(TIMER0_COMP_vect) \/* Timer0 compare interrupt handler *\/ { \tif (--duration == 0) \/* Decrement Duration value each 1ms and if it reach to 0 *\/ \t{ \t\ttimer0Stop(); \/* Stop Timer0 *\/ \t\tturnOffAllLED(); \/* Turn off all LEDs *\/ \t\ttimer0Clear(); \/* Clear Timer0 counter register *\/ \t} } <\/code><\/pre>\n<\/div>\n<\/div>\n<p>  \u0423\u0447\u0430\u0441\u0442\u043a\u0438 \u043a\u043e\u0434\u0430, \u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0430 \u044d\u0442\u043e 1-Wire \u0441\u0438\u0433\u043d\u0430\u043b\u044b, \u043e\u0431\u0435\u0440\u043d\u0443\u0442\u044b \u0432 <b>ATOMIC_BLOCK<\/b> \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e. \u0412\u0441\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u044b \u0432 <b>global.h<\/b>. UART \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 250000. \u0411\u044b\u0441\u0442\u0440\u043e \u0438 \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a \u0434\u043b\u044f \u043a\u0432\u0430\u0440\u0446\u0430 \u0432 16 \u041c\u0413\u0446. \u0414\u0440\u0430\u0439\u0432\u0435\u0440 DS18B20 \u0438\u043c\u0435\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u2014 \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043a\u043e\u0434. \u0411\u0443\u0434\u0443\u0442 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u2014 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435, \u043d\u0435 \u0441\u0442\u0435\u0441\u043d\u044f\u0439\u0442\u0435\u0441\u044c. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 \u0444\u044a\u044e\u0437\u043e\u0432. \u0412 \u043d\u0438\u0445 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043a\u0432\u0430\u0440\u0446\u0430 \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 (\u0430 \u043e\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 8 \u041c\u0413\u0446 \u0438 \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439). \u041d\u0443 \u0438 \u0437\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c CKOPT \u0431\u0438\u0442, \u0438\u043d\u0430\u0447\u0435 \u043a\u0432\u0430\u0440\u0446\u044b \u0432\u044b\u0448\u0435 8 \u041c\u0413\u0446 \u043d\u0435 \u0437\u0430\u0432\u0435\u0434\u0443\u0442\u0441\u044f. \u0423 \u043c\u0435\u043d\u044f <b>High Fuse = 0xD9<\/b>, <b>Low Fuse = 0xFF<\/b>.<\/p>\n<h1>\u041c\u043e\u0434\u0435\u043b\u044c Simulink + \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b<\/h1>\n<p>  \u0412\u0435\u0440\u0441\u0438\u044f <b>Matlab R2015b<\/b>. \u0412 <b>Simulink<\/b>, \u043f\u043e\u043c\u0438\u043c\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c <b>Computer Vision System Toolbox<\/b> \u0438 <b>Image Aquisition Toolbox<\/b>. \u0412\u0441\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0438 \u0441\u043e\u043f\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0432\u044b\u043b\u043e\u0436\u0435\u043d\u044b \u043d\u0430 <a href=\"https:\/\/github.com\/viktorpanasiuk\/WebCamTemp\/tree\/master\/Simulink\">GitHub<\/a>. \u041d\u0438\u0436\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u043c\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438. \u0412\u0441\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u044b.<\/p>\n<h2>\u041c\u043e\u0434\u0443\u043b\u044c WebCamTemp<\/h2>\n<p>  <a href=\"https:\/\/habrastorage.org\/files\/2e4\/c31\/399\/2e4c31399c0f49c982f69e103770fc72.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/f1d\/b35\/8bb\/f1db358bbf3f4bb4b9b31dc3724daf27.bmp\"\/><\/a>\u0416\u0435\u043b\u0442\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0431\u043b\u043e\u043a\u0438 COM-\u043f\u043e\u0440\u0442\u0430. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a, \u043f\u0440\u0438\u0435\u043c\u043d\u0438\u043a \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0442\u043e\u0440. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u0440\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0432 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0442\u044c \u0441 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0441\u043a\u0438\u043c\u0438 (\u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c, \u0447\u0435\u0442\u043d\u043e\u0441\u0442\u044c, \u043a\u043e\u043b-\u0432\u043e \u0431\u0438\u0442 \u0438 \u0442.\u0434.). \u041f\u0440\u0438\u0435\u043c\u043d\u0438\u043a \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0443, \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044f \u0435\u0435 \u0432 \u043e\u0434\u043d\u043e\u043c\u0435\u0440\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 <b>[n 1]<\/b> \u0442\u0438\u043f\u0430 <b>int16<\/b>, \u0433\u0434\u0435 <b>n<\/b> \u2014 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e DS18B20 ( \u0443 \u043c\u0435\u043d\u044f 6). \u041a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u044d\u0442\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0434\u0430\u043b\u0435\u0435 \u0434\u0435\u043b\u0438\u0442\u0441\u044f \u043d\u0430 <b>16<\/b>. \u042d\u0442\u043e \u0438\u0437 <a href=\"https:\/\/datasheets.maximintegrated.com\/en\/ds\/DS18B20.pdf\">\u0434\u0430\u0442\u0430\u0448\u0438\u0442\u0430<\/a> \u0441\u0442\u0440. 6. \u041f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 <b>Counter<\/b>. \u041e\u043d\u043e \u043a\u0430\u043a \u0440\u0430\u0437 \u0437\u0430\u0436\u0438\u0433\u0430\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434. \u0422\u0438\u043a\u0430\u0435\u0442 \u043e\u0442 <b>0<\/b> \u0434\u043e <b>n<\/b>. \u041f\u0435\u0440\u0438\u043e\u0434 2 \u0441\u0435\u043c\u043f\u043b\u0430. \u0421\u0438\u043d\u0438\u043c \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0431\u043b\u043e\u043a\u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\/\u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e\u043f\u043e\u0442\u043e\u043a\u0430. \u0417\u0435\u043b\u0435\u043d\u044b\u043c \u2014 \u0431\u043b\u043e\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u0435\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438. \u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u0430\u043c\u0430 \u0432\u0435\u0431-\u043a\u0430\u043c\u0435\u0440\u0430. \u0422\u0443\u0442 \u043a\u0443\u0447\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u0440\u0430\u0437\u043d\u044b\u0445, \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f. \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0432\u044b\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0441\u0435\u0440\u044b\u0445 \u0442\u043e\u043d\u0430\u0445. \u0422\u0430\u043a \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435. \u0411\u043b\u043e\u043a <b>Diff<\/b> \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u043c \u0438 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u043a\u0430\u0434\u0440\u0430\u043c\u0438. \u0411\u043b\u043e\u043a <b>Downsample odd<\/b> \u0432\u044b\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u043d\u0438\u0446\u0443 \u0437\u0430\u0436\u0436\u0435\u043d\u043d\u044b\u0439 \u2014 \u043d\u0435 \u0437\u0430\u0436\u0436\u0435\u043d\u043d\u044b\u0439 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434, \u043d\u043e \u043d\u0435 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442. \u0411\u043b\u043e\u043a <b>Downsample even<\/b> \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u043a\u0430\u0434\u0440\u044b, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434 \u043f\u043e\u0442\u0443\u0448\u0435\u043d.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Img diff<\/b><\/p>\n<div class=\"spoiler_text\">\u0421\u043b\u0435\u0432\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0441\u043f\u0440\u0430\u0432\u0430 \u2014 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430. \u041f\u043e \u043d\u0435\u0439 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0438\u0449\u0443\u0442\u0441\u044f \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 (\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u0442\u043e\u0436\u0435). \u041b\u0443\u0447\u0448\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e \u043a\u0430\u0434\u0440\u0430\u043c, \u043d\u043e \u0432\u0438\u0434\u0438\u043c\u043e \u0432 \u044e\u0442\u0443\u0431\u0435 \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0442. \u041c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c 0.25.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/tbpDALqIc0g?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Img gray<\/b><\/p>\n<div class=\"spoiler_text\">\u0421\u043b\u0435\u0432\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0441\u043f\u0440\u0430\u0432\u0430 \u2014 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0438 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u0440\u0442\u0430. \u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 \u0432 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u044b \u043d\u0435 \u043c\u043e\u0440\u0433\u0430\u044e\u0442. \u0421\u0434\u0435\u043b\u0430\u043d\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043d\u0430\u043f\u0440\u044f\u0433\u0430\u043b\u043e.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/ATGUUmG77eo?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <b>Frame Rate Display<\/b> \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 FPS. \u0412\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438\u0434\u0435\u0442 \u0432 \u0431\u043b\u043e\u043a\u0435 <b>LEDs<\/b>. \u0415\u0433\u043e \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c.<\/p>\n<h2>\u041c\u043e\u0434\u0443\u043b\u044c LEDs<\/h2>\n<p>  <a href=\"https:\/\/habrastorage.org\/files\/198\/7a3\/9a1\/1987a39a19e04951bb83cfefa7472265.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/636\/73d\/92d\/63673d92d053459c9c0c226edded2d13.bmp\"\/><\/a>\u0424\u0438\u043e\u043b\u0435\u0442\u043e\u0432\u044b\u043c \u0441\u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0431\u043b\u043e\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Gaussian_function#Two-dimensional_Gaussian_function\">2D \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d<\/a>. \u041d\u0430\u043c \u043d\u0443\u0436\u043d\u044b \u0434\u0432\u0435: <b>Interference<\/b> \u0438 <b>Opacity<\/b>. \u041e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0441\u0438\u0433\u043c\u043e\u0439. \u0418\u0445 \u0446\u0435\u043d\u0442\u0440 \u0432 \u0442\u043e\u0447\u043a\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430 (\u0433\u0434\u0435 \u0433\u043e\u0440\u0435\u043b \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434). \u041a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0431\u043b\u043e\u043a\u043e\u043c <b>Maximum<\/b>. \u0412\u043c\u0435\u0441\u0442\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d (\u0430 \u044d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u043e\u0447\u0435\u043d\u044c \u0442\u0440\u0443\u0434\u043e\u0435\u043c\u043a\u0430\u044f \u043c\u0430\u0442. \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f) \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u043d\u044f\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0438\u0445 \u0432\u044b\u0440\u0435\u0437\u0430\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e, \u0432 m-\u0444\u0430\u0439\u043b\u0435, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0434\u0432\u0435 <b>Int<\/b> \u0438 <b>Op<\/b> \u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043c\u0438 \u0432 2 \u0440\u0430\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u0441 \u0446\u0435\u043d\u0442\u0440\u043e\u043c \u043f\u043e\u0441\u0440\u0435\u0434\u0438\u043d\u0435, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445, \u0434\u0430\u043b\u044c\u0448\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u0440\u043e\u043f\u0430\u044e\u0442\u0441\u044f \u043d\u0443\u0436\u043d\u044b\u0435, \u0431\u043b\u043e\u043a\u0430\u043c\u0438 <b>Crop interference<\/b> \u0438 <b>Crop opacity<\/b>.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\u0421\u0432\u0435\u0440\u0445\u0443 \u0441\u043b\u0435\u0432\u0430 \u2014 \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0435 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435. \u0421\u043d\u0438\u0437\u0443 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u2014 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0432 \u0434\u0432\u0430 \u0440\u0430\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0433\u043e. \u0411\u0435\u0433\u0430\u044e\u0449\u0438\u0439 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a \u2014 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u044b\u0440\u0435\u0437\u0430\u0435\u0442\u0441\u044f \u0441 \u043d\u0443\u0436\u043d\u044b\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0412\u0432\u0435\u0440\u0445\u0443 \u0441\u043f\u0440\u0430\u0432\u0430 \u2014 \u0442\u043e \u0447\u0442\u043e \u0438\u043c\u0435\u0435\u043c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435. \u041b\u0443\u0447\u0448\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 0.25.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/wGYyoVUJ8nQ?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  \u0417\u0435\u043b\u0435\u043d\u044b\u043c \u043e\u0431\u0432\u0435\u0434\u0435\u043d\u044b \u0431\u043b\u043e\u043a\u0438 \u043f\u0430\u043c\u044f\u0442\u0438. \u0418\u0445 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u2014 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0438 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430. \u0414\u0435\u0442\u0430\u043b\u044c\u043d\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0438\u0436\u0435. \u0411\u043b\u043e\u043a <b>To color<\/b> \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440 \u0438 \u0446\u0432\u0435\u0442\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b. \u0422\u0430\u043a\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043d\u0438\u0436\u0435. \u0411\u043b\u043e\u043a \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u0438 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 <b>Compositing<\/b> \u0441\u043c\u0435\u0448\u0438\u0432\u0430\u0435\u0442 \u0434\u0432\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f <b>Image1<\/b> \u0438 <b>Image2<\/b> \u043f\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043a\u043e\u043d\u0443:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"https:\/\/habrastorage.org\/files\/84a\/62d\/3d6\/84a62d3d604b42c5b0923eb74d8d58d4.gif\"\/><\/div>\n<p>  \u0411\u043b\u043e\u043a <b>Insert Text<\/b> \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 (\u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0443) \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435. \u041f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 <b>n<\/b> \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 <b>[X Y]<\/b>. \u041c\u043e\u0436\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u0448\u0440\u0438\u0444\u0442 \u0438 \u0435\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440. \u0411\u043b\u043e\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u0440\u0430\u0441\u043d\u043e\u0433\u043e \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Moving_average\">\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0433\u043e \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e<\/a>. \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u044b \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u043c\u0435\u043d\u0435\u0435 \u0434\u0435\u0440\u0433\u0430\u043d\u043d\u044b\u043c\u0438, \u0447\u0442\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u043d\u0435\u0440\u0432\u044b \u0438 \u0440\u0430\u0434\u0443\u0435\u0442 \u0433\u043b\u0430\u0437.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440<\/b><\/p>\n<div class=\"spoiler_text\">\u0421\u043b\u0435\u0432\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0441\u043f\u0440\u0430\u0432\u0430 \u2014 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0435 \u0441\u0440\u0435\u0434\u043d\u0435\u0435 \u0434\u043b\u044f 8-\u043c\u0438 \u0432\u044b\u0431\u043e\u0440\u043e\u043a. \u041a\u043e\u0433\u0434\u0430 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u0432\u0441\u0435\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439 \u043d\u0430 \u0434\u0435\u0441\u044f\u0442\u044b\u0435 \u0434\u043e\u043b\u0438 \u0433\u0440\u0430\u0434\u0443\u0441\u043e\u0432 (\u043f\u0430\u0440\u043e\u0447\u043a\u0443 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0434\u0430\u0442\u0447\u0438\u043a\u0430) \u0442\u0430\u043a\u0438\u0435 \u0440\u044b\u0432\u043a\u0438 \u0438\u043c\u0435\u044e\u0442 \u043c\u0435\u0441\u0442\u043e \u0431\u044b\u0442\u044c.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/Z8NgbGUZS50?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <\/p>\n<h2>\u041c\u043e\u0434\u0443\u043b\u0438 memory<\/h2>\n<p>  <b>Memory interference<\/b> \u0438 <b>Memory opacity<\/b> \u0445\u0440\u0430\u043d\u044f\u0442 \u043d\u0430\u0431\u043e\u0440\u044b 2D \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d, <b>Memory Pts<\/b> \u2014 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e LED.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Memory interference \u0438 Memory opacity<\/b><\/p>\n<div class=\"spoiler_text\"><a href=\"https:\/\/habrastorage.org\/files\/e77\/c07\/0f3\/e77c070f3ef440119d2a2f7986d635eb.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/06d\/f15\/23e\/06df1523e1d245f7b824b151f7dfa0e3.bmp\"\/><\/a>\u042d\u0442\u0438 \u0434\u0432\u0430 \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b. \u041d\u0430 \u0432\u0445\u043e\u0434 <b>Address<\/b> \u043f\u043e\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u043c\u0435\u0440 \u044f\u0447\u0435\u0439\u043a\u0438 \u043a\u0443\u0434\u0430 \u0437\u0430\u043f\u0438\u0448\u0435\u0442\u0441\u044f \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d. \u041f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043e\u0442 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430. \u0421\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u0433\u043e\u0440\u044f\u0449\u0435\u0433\u043e \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430. \u0411\u043b\u043e\u043a <b>Delay<\/b> \u043c\u043e\u0434\u0443\u043b\u044f <b>LEDs<\/b> \u0441\u043b\u0443\u0436\u0438\u0442 \u0434\u043b\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 (\u043f\u043e\u043a\u0430 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430, \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u0432\u0430\u0435\u0442 \u043e\u0442\u0442\u0438\u043a\u0430\u0442\u044c). \u0422\u0430\u043a \u0447\u0442\u043e \u0432\u0441\u0435 \u0443 \u043d\u0430\u0441 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043e. \u0421\u0438\u0433\u043d\u0430\u043b <b>Enable<\/b> \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u044c. \u0418\u043c\u0435\u0435\u0442 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0435\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0430 \u0432\u044b\u0448\u0435 \u043f\u043e\u0440\u043e\u0433\u0430 (\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0431\u043b\u043e\u043a <b>Maximum<\/b> \u0438 <b>Threshold<\/b> \u043c\u043e\u0434\u0443\u043b\u044f <b>LEDs<\/b>). \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043b\u043e\u0436\u043d\u043e \u2014 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u044f\u0447\u0435\u0439\u043a\u0438 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0432\u0441\u0435 \u0441\u043a\u043b\u0435\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u0442\u0440\u0435\u0442\u044c\u0435\u043c\u0443 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044e. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0431\u0435 \u0431\u0443\u0442\u0435\u0440\u0431\u0440\u043e\u0434 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 <b>[H W n]<\/b>, \u0433\u0434\u0435 <b>HxW<\/b> \u2014 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0435\u0431-\u043a\u0430\u043c\u0435\u0440\u044b, \u043d\u0443 \u0430 <b>n<\/b> \u2014 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432\/\u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432.  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">Memory Pts<\/b><\/p>\n<div class=\"spoiler_text\"><a href=\"https:\/\/habrastorage.org\/files\/fef\/4c6\/10d\/fef4c610db0b444cb05d4233b6103838.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/f25\/02b\/441\/f2502b4415bd4badad2de75142a84044.bmp\"\/><\/a>\u0418\u0434\u0435\u043d\u0442\u0438\u0447\u0435\u043d \u0434\u0432\u0443\u043c \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u043c \u0437\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0432\u0441\u0435 \u0441\u043a\u043b\u0435\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u043f\u043e \u0442\u0440\u0435\u0442\u044c\u0435\u043c\u0443 \u0430 \u043f\u043e \u043f\u0435\u0440\u0432\u043e\u043c\u0443 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044e. \u0410 \u0431\u043b\u043e\u043a <b>Permute Matrix<\/b> \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u0435\u043d\u044f\u0435\u0442 \u043c\u0435\u0441\u0442\u0430\u043c\u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u0444\u043e\u0440\u043c\u0430\u0442 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442 <b>[Y X]<\/b>, \u0430 \u043d\u0443\u0436\u0435\u043d <b>[X Y]<\/b>.  <\/div>\n<\/div>\n<p>  <\/p>\n<h2>\u041c\u043e\u0434\u0443\u043b\u044c To color<\/h2>\n<p>  <a href=\"https:\/\/habrastorage.org\/files\/849\/5a6\/349\/8495a63497804840948b2df1d11283ad.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/ff4\/661\/f73\/ff4661f7313342bc87aab6257d405ee9.bmp\"\/><\/a>\u0417\u0435\u043b\u0435\u043d\u044b\u043c \u2014 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 <b>Opacity<\/b>. \u0421\u0443\u043c\u043c\u0438\u0440\u0443\u0435\u043c \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u043e \u0442\u0440\u0435\u0442\u044c\u0435\u043c\u0443 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044e. \u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u0435\u043c \u0435\u0433\u043e \u043f\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u0443. \u0423\u043c\u043d\u043e\u0436\u0430\u0435\u043c \u043d\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <b>gain<\/b> (\u043e\u0442 0 \u0434\u043e 1) <b>(1)<\/b>. \u0418\u0442\u043e\u0433\u043e \u0438\u043c\u0435\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u0441 \u043d\u0430\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u043c\u0438 \u0434\u0440\u0443\u0433 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d\u0430\u043c\u0438 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c\u043e\u043c <b>gain<\/b>. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a <b>Factor<\/b> \u0434\u043b\u044f \u0441\u043c\u0435\u0448\u0435\u043d\u0438\u044f \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u041a\u0440\u0430\u0441\u043d\u043e\u0435 \u2014 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0446\u0432\u0435\u0442\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440. \u0422\u0443\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u0430\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430, \u0432\u0441\u0435 \u0442\u0435\u0445 \u0436\u0435 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d. \u041e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u043e\u0439 <b>(2)<\/b>. \u0413\u0440\u0443\u0431\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u2014 \u0441\u0440\u0435\u0434\u043d\u0435\u0432\u0437\u0432\u0435\u0448\u0435\u043d\u043d\u0430\u044f \u043e\u0442\u043e \u0432\u0441\u0435\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432. \u041d\u043e \u0432\u043b\u0438\u044f\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u0432 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043d\u043e\u043c \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d\u044b \u0432 \u043d\u0435\u0439. \u0421\u0443\u043c\u043c\u0430 \u0432\u0441\u0435\u0445 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0437\u0430 100%.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"https:\/\/habrastorage.org\/files\/87a\/e2d\/4a3\/87ae2d4a31ba4759bb9cf4d093fff846.gif\"\/><\/div>\n<p>  <a href=\"https:\/\/habrastorage.org\/files\/4d5\/a3e\/db3\/4d5a3edb33544533a782369e98d0d88f.bmp\"><img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/c51\/f48\/e29\/c51f48e29b614eb28a0134f517ee49e8.bmp\"\/><\/a>\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043a\u0430\u043a \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443. \u0422\u043e \u0447\u0442\u043e \u043e\u0431\u0432\u0435\u0434\u0435\u043d\u043e \u0441\u0438\u043d\u0438\u043c \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0443 \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 0 \u0438 1. \u0412 \u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u0437\u043e\u043d\u0435 \u0431\u043b\u043e\u043a\u043e\u043c <b>Prelookup<\/b> \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0438\u0449\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u0440\u0430\u0441\u043d\u043e\u0433\u043e, \u0437\u0435\u043b\u0435\u043d\u043e\u0433\u043e \u0438 \u0441\u0438\u043d\u0435\u0433\u043e. \u041c\u0430\u0441\u0441\u0438\u0432 \u0446\u0432\u0435\u0442\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 64 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u043f\u043e\u043b\u044f\u0446\u0438\u0438. \u0418\u0437 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0440\u0435\u0436\u0438\u043c\u0430: \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0438 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0439. \u0412 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u043c\u043e\u043c\u0443 \u0445\u043e\u043b\u043e\u0434\u043d\u043e\u043c\u0443 \u0438 \u0433\u043e\u0440\u044f\u0447\u0435\u043c\u0443 \u043c\u0435\u0441\u0442\u0443 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430. \u0412 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e\u043c \u2014 \u043d\u0435\u043a\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440. \u0412 \u0434\u0440\u0443\u0433\u043e\u043c \u2014 \u0435\u0435 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f.<\/p>\n<h2>m-\u0444\u0430\u0439\u043b<\/h2>\n<p>  \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0432\u043d\u0430\u0447\u0430\u043b\u0435, \u043f\u0435\u0440\u0435\u0434 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0435\u0439, \u0432\u043d\u043e\u0441\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0432 Workspace.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u043a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"matlab\">H = 480; % Height of image W = 640; % Width of image minT = 20; % Min temperature maxT = 25; % Max temperature sigmaInt = 40; % Sigma interference sigmaOp = 80; % Sigma opacity gain = 1.0; % Gain value T = 0.3; % Threshold value nAvr = 8; % number of means % ------------------------------------------------------ [M,N] = meshgrid(-W:W, -H:H); % Meshgrid function  R = sqrt(M.^2 + N.^2); % Distance from the center  Int = normpdf(R, 0, sigmaInt); % 2D gaussian for interference Op = normpdf(R, 0, sigmaOp); % 2D gaussian for opacity  Int = Int\/max(max(Int)); % Normalization of interference gaussian Op = Op\/max(max(Op)); % Normalization of opacity gaussian  clear M N R sigmaInt sigmaOp % Delete unused variables from memory  load('MyColormaps','mycmap'); % Load colormap <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0421\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441\u0440\u0435\u0434\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445:  <\/p>\n<ul>\n<li><b>H<\/b> \u2014 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \u043f\u043e \u0432\u044b\u0441\u043e\u0442\u0435.<\/li>\n<li><b>W<\/b> \u2014 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432\u0438\u0434\u0435\u043e \u043f\u043e \u0448\u0438\u0440\u0438\u043d\u0435.<\/li>\n<li><b>minT<\/b> \u2014 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u0430\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430.<\/li>\n<li><b>maxT<\/b> \u2014 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u0430\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0430.<\/li>\n<li><b>sigmaInt<\/b> \u2014 \u0441\u0438\u0433\u043c\u0430 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d\u044b Interference.<\/li>\n<li><b>sigmaOp<\/b> \u2014 \u0441\u0438\u0433\u043c\u0430 \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d\u044b Opacity.<\/li>\n<li><b>gain<\/b> \u2014 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Factor.<\/li>\n<li><b>T<\/b> \u2014 \u043f\u043e\u0440\u043e\u0433 \u0434\u043b\u044f \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a.<\/li>\n<li><b>nAvr<\/b> \u2014 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u0440\u0435\u0434\u043d\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u0433\u043e \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e.<\/li>\n<\/ul>\n<p>  <b>H<\/b> \u0438 <b>W<\/b> \u0434\u043e\u043b\u0436\u043d\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0442\u044c \u0441 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u0432 \u0431\u043b\u043e\u043a\u0435 WebCamera. <b>minT<\/b> \u0438 <b>maxT<\/b> \u0432\u043b\u0438\u044f\u044e\u0442 \u043d\u0430 \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e\u0439 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b. <b>T<\/b> \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442 0 \u0434\u043e 1. \u0418\u043d\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0441\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f COM-\u043f\u043e\u0440\u0442\u0430 \u0438 \u0432\u0435\u0431-\u043a\u0430\u043c\u0435\u0440\u044b. \u0424\u0430\u0437\u0430 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0433\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u043d\u0430 180\u00b0. \u0418 \u0442\u0430\u043c \u0433\u0434\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u2014 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043c\u0438\u043d\u0438\u043c\u0443\u043c. \u0410 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u0443\u044e \u2014 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u043e\u0440\u043e\u0433\u0430. <b>nAvr<\/b> \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0441\u0440\u0435\u0434\u043d\u0435\u043d\u0438\u0439 \u0432 \u0441\u043a\u043e\u043b\u044c\u0437\u044f\u0449\u0435\u043c \u0441\u0440\u0435\u0434\u043d\u0435\u043c. \u0427\u0435\u043c \u043e\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u2014 \u0442\u0435\u043c \u043f\u043b\u0430\u0432\u043d\u0435\u0435 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u044b, \u043d\u043e \u0442\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c (\u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0441\u0434\u0432\u0438\u0433). \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c \u0432\u043b\u0438\u044f\u043d\u0438\u0435 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0431\u0435\u0437 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u043d\u0435 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u043b\u0438\u044f\u043d\u0438\u0435 sigmaInt<\/b><\/p>\n<div class=\"spoiler_text\">\u041f\u0440\u0438 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/dd4\/52e\/fa0\/dd452efa07f74879864a7da50c880f39.gif\"\/> \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0432\u044b\u0440\u043e\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0435\u043a\u043e\u0435 \u043f\u043e\u0434\u043e\u0431\u0438\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Voronoi_diagram\">\u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u044f \u0412\u043e\u0440\u043e\u043d\u043e\u0433\u043e<\/a>. \u041f\u0440\u0438 <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/5de\/994\/dd0\/5de994dd0e834600b8fff948ae13eb07.gif\"\/> \u0432\u0441\u044f \u043a\u0430\u0440\u0442\u0430 \u0431\u0443\u0434\u0435\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0446\u0432\u0435\u0442\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u0440\u0435\u0434\u043d\u0435\u0439, \u043e\u0442 \u0432\u0441\u0435\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432, \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u0435. \u041f\u0440\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0438 \u2014 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u043a\u0430\u043a \u0431\u044b \u0440\u0430\u0437\u043c\u044b\u0432\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/cZV_ayNrWgE?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u043b\u0438\u044f\u043d\u0438\u0435 sigmaOp<\/b><\/p>\n<div class=\"spoiler_text\">\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u043f\u0430\u0434\u0430 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u0438 \u043e\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/S8R4A9AKFZU?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u043b\u0438\u044f\u043d\u0438\u0435 gain<\/b><\/p>\n<div class=\"spoiler_text\">\u041f\u043e-\u0441\u0443\u0442\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u0440\u0442\u044b. \u0421\u0430\u043c\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u00ab\u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u0438\u00bb \u0441\u0430\u043c\u043e\u0433\u043e \u00ab\u043d\u0435 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0433\u043e\u00bb \u043f\u0438\u043a\u0441\u0435\u043b\u044f \u043a\u0430\u0440\u0442\u044b.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/mvKfUSIw3rI?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe>  <\/div>\n<\/div>\n<p>  <\/p>\n<h1>\u042d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b<\/h1>\n<p>  \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b.<\/p>\n<h2>\u041e\u0442\u043a\u0440\u044b\u0442\u043e\u0435 \u043e\u043a\u043d\u043e<\/h2>\n<p>  \u0414\u0430\u0442\u0447\u0438\u043a\u0438 \u0440\u0430\u0437\u0431\u0440\u043e\u0441\u0430\u043d\u044b \u043d\u0430 \u043a\u0440\u043e\u0432\u0430\u0442\u0438 \u0443 \u043e\u043a\u043d\u0430. \u041e\u043a\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0438 \u0447\u0435\u0440\u0435\u0437 \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f. \u041d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e (\u0441\u043b\u0435\u0432\u0430) \u0438 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e\u0433\u043e (\u0441\u043f\u0440\u0430\u0432\u0430) \u0440\u0435\u0436\u0438\u043c\u043e\u0432. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0443\u0434\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435, \u0430 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u2014 \u043a\u0430\u043a \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0445\u043e\u043b\u043e\u0434 \u0438\u043b\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0435\u043f\u043b\u043e.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/AlDT9XyCSeo?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<h2>\u041f\u043e\u0434\u043e\u043a\u043e\u043d\u043d\u0438\u043a<\/h2>\n<p>  \u0414\u0430\u0442\u0447\u0438\u043a\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0432\u0434\u043e\u043b\u044c \u043f\u043e\u0434\u043e\u043a\u043e\u043d\u043d\u0438\u043a\u0430. \u041e\u043a\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u2014 \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f. \u041d\u0430\u0433\u043b\u044f\u0434\u043d\u043e \u0432\u0438\u0434\u043d\u044b \u0441\u0430\u043c\u0430\u044f \u0445\u043e\u043b\u043e\u0434\u043d\u0430\u044f \u0438 \u0442\u0435\u043f\u043b\u0430\u044f \u0437\u043e\u043d\u044b.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/OX8_0pjPLZg?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<h2>\u0421\u0432\u0435\u0440\u0445\u0443 \u0442\u0435\u043f\u043b\u0435\u0435?<\/h2>\n<p>  \u0413\u043e\u0432\u043e\u0440\u044f\u0442 \u043c\u043e\u043b \u0441\u0432\u0435\u0440\u0445\u0443 \u0442\u0435\u043f\u043b\u0435\u0435. \u042d\u0442\u043e\u0442 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u043e\u043b\u043d\u043e\u0435 \u0442\u043e\u043c\u0443 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435. \u041d\u0430 10-\u043e\u0439 \u0441\u0435\u043a\u0443\u043d\u0434\u0435 \u043e\u043a\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u043d\u0430 30-\u043e\u0439 \u2014 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>  <iframe loading=\"lazy\" width=\"420\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/pUDan07bd-E?feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<h1>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  \u0422\u0430\u043a\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043d\u0435 \u0437\u0430\u043c\u0435\u043d\u0438\u0442 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0442\u0435\u043f\u043b\u043e\u0432\u0438\u0437\u043e\u0440. \u041d\u043e \u0438 \u043e\u043d \u043d\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u0434\u0443\u0448\u043d\u044b\u0445 \u043c\u0430\u0441\u0441. \u0410 \u043f\u043e \u0446\u0435\u043d\u0435 \u044d\u0442\u0430 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043d\u0435\u0441\u043e\u0438\u0437\u043c\u0435\u0440\u0438\u043c\u043e \u043d\u0438\u0436\u0435. \u0412 \u043d\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443. \u041c\u043e\u0436\u043d\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u0433\u0430\u0443\u0441\u0441\u0438\u0430\u043d \u0432\u0437\u044f\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u041c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0437\u0430\u043a\u043e\u043d\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f. \u0418\u043b\u0438 \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430 OpenCV + QT \u0434\u043b\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0438 \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430. \u041d\u043e \u0442\u043e\u0433\u043e \u0447\u0435\u0433\u043e \u0437\u0430\u0434\u0443\u043c\u0430\u043b \u044f \u2014 \u0434\u043e\u0441\u0442\u0438\u0433. \u041f\u0440\u043e\u0441\u0442\u043e <b>Just For Fun<\/b>.               <\/p>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/geektimes.ru\/post\/271592\/\"> https:\/\/geektimes.ru\/post\/271592\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>       <img decoding=\"async\" align=\"left\" src=\"https:\/\/habrastorage.org\/files\/e2a\/4a8\/d70\/e2a4a8d7092845e082baee85d185ebd2.bmp\"\/>\u0417\u0430\u0434\u0443\u043c\u0430\u043b \u044f \u043a\u0430\u043a-\u0442\u043e \u043f\u043e\u0438\u0433\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0430\u0442\u0447\u0438\u043a\u0430\u043c\u0438 <a href=\"https:\/\/datasheets.maximintegrated.com\/en\/ds\/DS18B20.pdf\">DS18B20<\/a>. \u0414\u0430 \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b (\u0447\u0442\u043e \u0443\u043c\u0435\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439), \u043d\u043e \u0438 \u043a\u0430\u043a-\u0442\u043e \u0435\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u0412\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0438\u0434\u0435\u044f. \u0421\u0442\u0430\u0432\u0438\u043c \u0432\u0435\u0431\u043a\u0430\u043c\u0435\u0440\u0443. \u0417\u0430\u0436\u0438\u0433\u0430\u0435\u043c \u0441\u0432\u0435\u0442\u0438\u043a \u043d\u0430 \u0447\u0435\u0442\u043d\u043e\u043c \u043a\u0430\u0434\u0440\u0435, \u043d\u0430 \u043d\u0435 \u0447\u0435\u0442\u043d\u043e\u043c \u2014 \u0442\u0443\u0448\u0438\u043c. \u0412\u044b\u0447\u0438\u0442\u0430\u0435\u043c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u2014 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u043f\u044b\u0448\u043a\u0430. \u041f\u043e \u043d\u0435\u0439 \u0438 \u0438\u0449\u0435\u043c \u043c\u0435\u0441\u0442\u043e\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0447\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435. \u0410 \u0434\u0430\u043b\u044c\u0448\u0435 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430. \u041d\u0443 \u0438 \u0432\u0441\u0435 \u044d\u0442\u043e \u0432 \u0441\u0438\u043c\u0443\u043b\u0438\u043d\u043a\u0435. \u041f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u0447\u043a\u0438. \u0410 \u0434\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0436\u0435\u043b\u0430\u0435\u0442 \u2014 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0430\u0442\u044c\u0438.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-275295","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/275295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=275295"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/275295\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=275295"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=275295"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=275295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}