New file |
| | |
| | | |
| | | |
| | | éæ±åæææ¡£ è¦æ±ï¼[æç»å½¢æçææ¡£ï¼ä»¥wordçææ¡£æ ¼å¼è¡¨ç°åºæ¥] |
| | | |
| | | 1ã项ç®èæ¯ |
| | | <<<<<<< HEAD |
| | | |
| | | åºå¸åºéæ±ï¼ç»åä¸å¡æ¹åï¼ç°å³å®ç å䏿¬¾è夿å¡è®¾å¤ï¼åçæ§ä¸ä½ä»¥AI为主ç设å¤ã |
| | | |
| | | 2ã坿¥çèå´ï¼è°è½çè¿ä¸ªææ¡£ï¼ |
| | | |
| | | PMï¼PL以åè´è´£å®ç°å个模åçPgã |
| | | |
| | | 3ãä¸ä¸æ¯è¯ï¼åè¯è§£éï¼èªå·±åç缩ååä¸äºè¾çå»çååï¼ |
| | | |
| | | AIæ¹é¢ï¼ |
| | | TensorFlowæ¡æ¶ï¼ç± Google å¼ååç»´æ¤ç弿ºæ·±åº¦å¦ä¹ æ¡æ¶ï¼è¢«å¹¿æ³åºç¨äºåç±»æºå¨å¦ä¹ ç®æ³çç¼ç¨å®ç° |
| | | OpenCVæ¡æ¶ï¼æ¯ä¸ä¸ªå¹¿æ³ä½¿ç¨ç弿ºè®¡ç®æºè§è§åæºå¨å¦ä¹ 软件åºï¼å®æä¾äºåç§ç¨äºå¤çå¾ååè§é¢çå·¥å
·åç®æ³ã |
| | | CNNå·ç§¯ç¥ç»ç½ç»ç®æ³ï¼Convolutional Neural Networkï¼CNNï¼æ¯ä¸ç§ä¸é¨ä¸ºå¤çå
·æç½æ ¼ç»ææ°æ®ï¼å¦å¾åãé³é¢ï¼èè®¾è®¡çæ·±åº¦å¦ä¹ 模åï¼å¨å¾åè¯å«ãç®æ æ£æµãè¯ä¹åå²ç诸å¤é¢ååå¾äºå·¨å¤§æåã |
| | | å·ç§¯å±ï¼Convolutional Layerï¼ |
| | | å·ç§¯æä½ï¼éè¿å·ç§¯æ ¸ï¼ä¹å«æ»¤æ³¢å¨ï¼å¨è¾å
¥æ°æ®ä¸æ»å¨ï¼å¯¹æ¯ä¸ªä½ç½®è¿è¡å·ç§¯è®¡ç®ï¼æåå±é¨ç¹å¾ãä¾å¦ï¼å¨å¾åä¸ï¼å·ç§¯æ ¸ä¸å¾åçå±é¨åºåè¿è¡å
ç´ ç¸ä¹å¹¶æ±åï¼çæç¹å¾å¾ãå¦ä¸ä¸ª 3Ã3 çå·ç§¯æ ¸å¨ä¸å¼ 6Ã6 çå¾å䏿»å¨ï¼æ¯æ¬¡è®¡ç®å¯¹åºä½ç½®çä¹ç§¯åï¼å¾å°æ°çç¹å¾å¼ç»ææ°çç©éµï¼ç¹å¾å¾ï¼ã |
| | | ä½ç¨ï¼å¤§å¤§åå°æ¨¡ååæ°æ°éï¼éä½è®¡ç®éï¼åæ¶ä¿çæ°æ®ç空é´ç»æä¿¡æ¯ãä¾å¦ï¼å¯¹äºä¸å¼ 100Ã100 åç´ ç彩è²å¾åï¼3 个ééï¼ï¼è¥ä½¿ç¨å
¨è¿æ¥å±å¤çï¼åæ°æ°é巨大ï¼è使ç¨å·ç§¯å±ï¼éè¿å°çå·ç§¯æ ¸å°±è½æææåç¹å¾ã |
| | | æ± åå±ï¼Pooling Layerï¼ |
| | | æ± åæä½ï¼å¸¸è§çææå¤§æ± åï¼Max Poolingï¼å平忱 åï¼Average Poolingï¼ãæå¤§æ± 忝å¨ä¸ä¸ªåºåå
åæå¤§å¼ï¼å¹³åæ± ååæ¯è®¡ç®åºåå
çå¹³åå¼ãä¾å¦ï¼å¨ 2Ã2 çåºåä¸è¿è¡æå¤§æ± åï¼å°±æ¯ä»è¿ 4 个å¼ä¸éåæå¤§çä½ä¸ºè¾åºã |
| | | ä½ç¨ï¼é使°æ®ç»´åº¦ï¼åå°è®¡ç®éï¼åæ¶å¨ä¸å®ç¨åº¦ä¸é²æ¢è¿æåï¼æé«æ¨¡åç鲿£æ§ãæ¯å¦ç»è¿å¤æ¬¡å·ç§¯åç¹å¾å¾å°ºå¯¸ä»ç¶è¾å¤§ï¼éè¿æ± åå¯ä»¥å缩尺寸ã |
| | | å
¨è¿æ¥å±ï¼Fully Connected Layerï¼ |
| | | è¿æ¥æ¹å¼ï¼å°åé¢å±è¾åºçææç¥ç»å
é½ä¸æ¬å±çæ¯ä¸ªç¥ç»å
ç¸è¿ï¼å
¶æéç©éµå
å«äºææè¾å
¥å°è¾åºçè¿æ¥æéãæ¯å¦ï¼åä¸å±è¾åº 100 个ç¹å¾ï¼å
¨è¿æ¥å±æ 50 个ç¥ç»å
ï¼é£ä¹æéç©éµå¤§å°å°±æ¯ 100Ã50ã |
| | | ä½ç¨ï¼å¯¹å颿åå°çç¹å¾è¿è¡ç»¼åï¼å®æåç±»æåå½ä»»å¡ãå¨å¾ååç±»ä¸ï¼å
¨è¿æ¥å±å°å·ç§¯åæ± ååæåçç¹å¾æ å°å°ä¸åçç±»å«ä¸ã |
| | | æ¿æ´»å½æ°ï¼Activation Functionï¼ |
| | | 常ç¨å½æ°ï¼å¦ ReLUï¼Rectified Linear Unitï¼ï¼è¡¨è¾¾å¼ä¸º f (x) = max (0, x)ãå½è¾å
¥ x å¤§äº 0 æ¶ï¼è¾åºå°±æ¯ x æ¬èº«ï¼å½ x å°äºçäº 0 æ¶ï¼è¾åºä¸º 0ãè¿æ Sigmoid 彿°ãTanh 彿°çã |
| | | ä½ç¨ï¼ä¸ºæ¨¡åå¼å
¥é线æ§å ç´ ï¼ä½¿æ¨¡åè½å¤å¦ä¹ 夿çé线æ§å
³ç³»ãå¦ææ²¡ææ¿æ´»å½æ°ï¼æ 论ç¥ç»ç½ç»æå¤å°å±ï¼å
¶è¾åºé½æ¯è¾å
¥ç线æ§ç»åï¼æ æ³å¤ç夿çç°å®é®é¢ã |
| | | è§é¢æ¹é¢ï¼ |
| | | Live555æ¡æ¶ï¼æ¯ä¸ä¸ªå¼æ¾æºä»£ç çãå®ç°äºæ åæµåªä½ä¼ è¾åè®®çå¤åªä½æµæ¡æ¶ï¼å¹¿æ³åºç¨äºæµåªä½æå¡å¨å客æ·ç«¯çå¼åã |
| | | FFmpegåºï¼æ¯ä¸ä¸ªå¼ºå¤§ç弿ºé³è§é¢å¤çåºï¼è¢«å¹¿æ³åºç¨äºé³è§é¢çå½å¶ã转ç ãæµå¼ä¼ è¾çä¼å¤é¢åã |
| | | RTSPåè®®ï¼ï¼Real Time Streaming Protocolï¼å³å®æ¶æµåè®®ï¼æ¯ä¸ç§ç¨äºæ§å¶å®æ¶æ°æ®ï¼å¦é³é¢ãè§é¢ï¼ä¼ è¾çç½ç»åè®®ã |
| | | é«å¹¶åï¼å¤çº¿ç¨ï¼ï¼ |
| | | çº¿æ§æ± ï¼æ¯ä¸ç§é¢å
åé
ä¸åè¿ç»çå
ååºåæèµæºéåï¼ç¶åæç
§é¡ºåºä¾æ¬¡åé
å使ç¨è¿äºå
ååæèµæºçç®¡çæ¹å¼ãå®å¨åå§åæ¶ä¼ä¸æ¬¡æ§åé
ä¸å¤§åå
åæä¸ç»èµæºï¼åç»çåé
æä½å°±å¨è¿ä¸ªå·²åé
çåºåå
è¿è¡ï¼ç´å°ææèµæºé½è¢«åé
å®ã |
| | | Epollï¼Epoll æ¯ Linux å
æ ¸ä¸ºå¤ç大æ¹éæä»¶æè¿°ç¬¦èä½çæ¹è¿ï¼æ¯å¨ 2.5.44 å
æ ¸ä¸å¼å
¥çï¼ç¨äºå®ç°é«æç I/O å¤è·¯å¤ç¨ã |
| | | éç¨ï¼ |
| | | XMLï¼å¯æ©å±æ è®°è¯è¨ï¼æ¯ä¸ç§ç¨äºåå¨åä¼ è¾æ°æ®çæ è®°è¯è¨ãè®¾è®¡ç®æ æ¯ä¼ è¾åå卿°æ®ï¼è䏿¯æ¾ç¤ºæ°æ®ãå®çæ ç¾æ²¡æè¢«é¢å®ä¹ï¼ç¨æ·å¯ä»¥æ ¹æ®èªå·±çéæ±èªå®ä¹æ ç¾ï¼å
·æå¾å¼ºççµæ´»æ§åæ©å±æ§ï¼è¢«å¹¿æ³åºç¨äºæ°æ®äº¤æ¢ãé
ç½®æä»¶ãææ¡£åå¨çé¢åã |
| | | TCPï¼ä¼ è¾æ§å¶åè®®ï¼æ¯ä¸ç§é¢åè¿æ¥çãå¯é çãåºäºåèæµçä¼ è¾å±éä¿¡åè®®ã |
| | | |
| | | 4ãåè½æè¿° |
| | | 4.1ãæ»çåè½æè¿°ï¼ç½ååºCï¼Sç«¯çææåè½ï¼ |
| | | C端ï¼1.注åï¼ç»å½ 2.æé管ç 3.å¾åå½å
¥ 4.èå¤è¯å«ã管ç 5.宿¶ææ¥ 6.åå²åæ¾ 7.æå头å°å¾æ 注 8.ç³»ç»è®¾ç½® 9.çæ¬å级 |
| | | S端: 1.socketç½ç»æå»º 2.SQLå°è£
ï¼å»ºåºã表ï¼å¤ä»½å¯¼åºï¼é²æ³¨å
¥ 3.æ¥å¿å°è£
ç产 4.é
置管ç 5.å¾å管ç 6.CNNæå»ºæ¨¡åï¼è®ç»ï¼éªè¯ï¼è¿ç§» 7.çæ¬ç®¡ç |
| | | |
| | | 4.2ãå
·ä½è´è´£æ¨¡åçæè¿°:[è¯¦ç»æè¿°]è¥æçé¢ï¼å¯ä»¥æç颿ªå¾æ¾ä¸æ¥ï¼å¯ä»¥æåæè¿°å¤åä¸äº |
| | | å°½éç¨éä¿ææçè¯è¨æ¥æè¿° |
| | | |
| | | 1. å工信æ¯è¡¨ï¼åå¨åå·¥çåºæ¬ä¿¡æ¯ï¼å¦åå·¥ç¼å·ãå§åãæ§å«ãå¹´é¾ãé¨é¨ãèä¸ã |
| | | 2. èå¤è®°å½è¡¨ï¼åå¨åå·¥çèå¤è®°å½ï¼å
æ¬è夿¶é´ãèå¤ç±»åï¼å¦ä¸çãä¸çãå ççï¼ãèå¤ç¶æï¼å¦æ£å¸¸ãè¿å°ãæ©éãæ·å·¥çï¼ã |
| | | 3. é¨é¨ä¿¡æ¯è¡¨ï¼åå¨å
¬å¸çé¨é¨ä¿¡æ¯ï¼å¦é¨é¨ç¼å·ãé¨é¨åç§°çã |
| | | 1. **å工信æ¯è¡¨**ï¼åå¨åå·¥çåºæ¬ä¿¡æ¯ï¼å¦åå·¥ç¼å·ãå§åãå¹´é¾ãæ§å«ãåºçæ¥æãé¨é¨ãèä½çã该表ç主é®ä¸ºåå·¥ç¼å·ã |
| | | 2. **èå¤è®°å½è¡¨**ï¼åå¨åå·¥çèå¤è®°å½ï¼å
æ¬è夿¥æãä¸çæ¶é´ãä¸çæ¶é´ãè¿å°æ¶é´ãæ©éæ¶é´ãæ·å·¥æ¶é´çã该表ç主é®ä¸ºè夿¥æååå·¥ç¼å·çç»åé®ã |
| | | 3. **é¨é¨ä¿¡æ¯è¡¨**ï¼åå¨å
¬å¸çé¨é¨ä¿¡æ¯ï¼å¦é¨é¨ç¼å·ãé¨é¨åç§°ãé¨é¨è´è´£äººçã该表ç主é®ä¸ºé¨é¨ç¼å·ã |
| | | |
| | | |
| | | 5ãè´è´£æ¨¡åçæµç¨å¾ï¼ç»å¶å¹¶æªå¾ï¼ |
| | | |
| | | |
| | | 6ãè´è´£æ¨¡åç¨å°çæ°æ®åºè¡¨ï¼[è¥ç¨å°å¤å¼ 表äºï¼å¯ä»¥ç»å¶ERå¾ï¼è¡¨ä¹é´çå
³ç³»å¾ï¼] |
| | | 表åãåæ®µåãå
·ä½ç约æçï¼äºç»´è¡¨æ ¼å½¢å¼ç½åï¼ |
| | | |
| | | 7ãUMLç±»å¾ï¼æ¨¡åç¨å°çç±»åã屿§ã彿°çï¼ä»¥åç±»ä¹é´çå
³ç³»ï¼å
大å
³ç³»ï¼ |
| | | |
| | | |
| | | 8ãç½ç»éä¿¡ç¨å°çç»æä½[ç§æåè®®]ï¼ |
| | | 请æ±ç»æä½ |
| | | ååºç»æä½ |
| | | 以åéè¦ç¨å°çé
å¥ç»æä½ |
| | | ======= |
| | | åºå¸åºå¯¹äºé«æäººå管çåå®å
¨çæ§ç强çéæ±ï¼åæ¶ç»åå
¬å¸ä¸å¡çå屿¹åï¼å³å®ç å䏿¬¾éè夿å¡ä¸çæ§åè½ä¸ºä¸ä½ï¼ä¸ä»¥ AI ææ¯ä¸ºæ ¸å¿ç设å¤ã |
| | | è¿æ¬¾è®¾å¤æ¨å¨ä¸ºåç±»ä¼ä¸ãæºææä¾ä¸ç«å¼è§£å³æ¹æ¡ï¼å¸®å©å
¶æå管çæçï¼éä½äººåææ¬ï¼å¹¶å¢å¼ºå®å
¨æ§ã |
| | | 2ã坿¥çèå´ |
| | | 项ç®ç»ç |
| | | ï¼å¼å人å |
| | | ï¼ æµè¯äººå |
| | | 3ãä¸ä¸æ¯è¯ |
| | | è®¾è®¡æ¶æ:C/S |
| | | C:Client客æ·ç«¯ ç¨Qtå®ç° |
| | | S:Sersvræå¡ç«¯ ç¨C++å®ç° |
| | | TensorFlowæ¡æ¶ï¼ä¸ä¸ªæºå¨å¦ä¹ æ¡æ¶ï¼ç¨äºæå»ºåè®ç»æ·±åº¦å¦ä¹ 模åã |
| | | OpenCvæ¡æ¶ï¼è®¡ç®æºè§è§åºï¼ç¨äºå¤çå¾ååè§é¢ã |
| | | CNNå·ç§¯ç¥ç»ç½ç»ç®æ³ï¼å¤çå¾åãé³é¢ç深度å¦ä¹ çç®æ³ï¼ä¹æ¯é¢é¨è¯å«ãè¡ä¸ºåæçåè½çæ ¸å¿ç®æ³ã |
| | | Live555æ¡æ¶ï¼å¤åªä½æµåªä½æ¡æ¶ï¼ç¨äºå®ç°é³é¢åè§é¢æ°æ®ç宿¶ä¼ è¾ã |
| | | FFmpeg:对é³é¢ãè§é¢è¿è¡è§£ç ãç¼ç ã转ç ãå¤ç¨çæä½ã |
| | | RTSPåè®®ï¼å®æ¶æµåè®®ï¼çæ§è§é¢æµã |
| | | Epoll:å¤ç大éå¹¶åè¿æ¥ï¼æé«æå¡å¨ç«¯å¤ç大é客æ·ç«¯è¿æ¥è¯·æ±çæçã |
| | | TCP:ä¼ è¾æ§å¶åè®®ã |
| | | XML:坿©å±æ è®°è¯è¨ï¼ç¨äºåå¨åä¼ è¾æ°æ®ã |
| | | 4ãåè½æè¿° |
| | | 4.1ãæ»çåè½æè¿° (ç½ååºC/Sçææåè½) |
| | | Cï¼1ãæ³¨åãç»å½ |
| | | 2ãæé管ç |
| | | 3ãå¾åå½å
¥ |
| | | 4ãèå¤è¯å«ã管ç |
| | | 5ã宿¶ææ¾ |
| | | 6ãåå²åæ¾ |
| | | 7ãæå头å°å¾æ 注 |
| | | 8ãç³»ç»è®¾ç½® |
| | | 9ãçæ¬å级 |
| | | S: 1ãsocketç½ç»æå»º |
| | | 2ãSQLå°è£
ï¼å»ºåºã表ï¼å¤ä»½å¯¼åºï¼é²æ³¨å
¥ |
| | | 3ãæ¥å¿å°è£
çæ |
| | | 4ãé
置管ç |
| | | 5ãå¾å管ç |
| | | 6ãCNNæå»ºæ¨¡åãè®ç»ãéªè¯ãè¿ç§» |
| | | 7ãçæ¬ç®¡ç |
| | | 4.2ãå
·ä½è´è´£æ¨¡åçæè¿°:[è¯¦ç»æè¿°]è¥æçé¢ï¼å¯ä»¥æç颿ªå¾æ¾ä¸æ¥ï¼å¯ä»¥æåæè¿°å¤åä¸äºå°½éç¨éä¿ææçè¯è¨æ¥æè¿° (说ç½è¯) |
| | | è´è´£æ¨¡åï¼Sç«¯çæ¬ç®¡ç主è¦è´è´£æå¡ç«¯è½¯ä»¶çæ¬çå
¨çå½å¨æç®¡çã |
| | | æ°çæ¬ï¼å½ææ°çåè½å¼å宿åæè
é®é¢ä¿®å¤åï¼ä¼çææ°ççæ¬ã |
| | | çæ¬ç¼å·ï¼å¯¹ä¸åçæ¬è¿è¡ç¼å·ï¼è®°å½çæ¬ç详ç»ä¿¡æ¯ï¼å
æ¬å叿¶é´ãåè½ç¹æ§ãä¿®å¤çé®é¢çã |
| | | çæ¬æµè¯ï¼æ°çæ¬å叿¶ï¼è¿è¡ä¸¥æ ¼ççæ¬æµè¯ï¼ç¡®ä¿æ°çæ¬çç¨³å®æ§åå
¼å®¹æ§ã |
| | | åè°å®¢æ·ç«¯ï¼ç¡®ä¿å®¢æ·ç«¯å¯ä»¥åæ¶è·åå°ææ°çæå¡å¨çæ¬ã |
| | | 5ãè´è´£æ¨¡åçæµç¨å¾ (ç»å¶æµç¨å¾ï¼å¼å§ç»æ) |
| | | å¼å§->åè½å¼å/é®é¢ä¿®å¤->çææ°çæ¬ç¼å·->è®°å½çæ¬ä¿¡æ¯ï¼å叿¶é´ãåè½ãä¿®å¤é®é¢çï¼ |
| | | ->è¿è¡çæ¬æµè¯->åå¸çæ¬->åæ»å°ä¸ä¸ä¸ªç¨³å®çæ¬->éç¥å®¢æ·ç«¯å级->éç¥å®¢æ·ç«¯å级->ç»æã |
| | | 6ãè´è´£æ¨¡åç¨å°çæ°æ®åºè¡¨ï¼[è¥ç¨å°å¤å¼ 表äºï¼å¯ä»¥ç»å¶ERå¾] (表å
³ç³»å¾) |
| | | 表åãåæ®µåãå
·ä½ç约æç (è¡¨æ ¼å½¢å¼ç½å) |
| | | |
| | | 7ãUMLç±»å¾ï¼æ¨¡åç¨å°çç±»åã屿§ã彿°çï¼ä»¥åç±»ä¹é´çå
³ç³» |
| | | |
| | | 8ãç½ç»éä¿¡ç¨å°çç»æä½[ç§æåè®®]ï¼ |
| | | 请æ±ç»æä½ï¼ |
| | | struct Request { |
| | | int request_id; // 请æ±ID |
| | | string action; // 请æ±çå¨ä½ |
| | | string data; // éå æ°æ® |
| | | }; |
| | | ååºç»æä½: |
| | | struct Response { |
| | | int response_id; // ååºID |
| | | bool success; // æ¯å¦æå |
| | | string message; // ååºä¿¡æ¯ |
| | | string data; // éå æ°æ® |
| | | }; |
| | | 以åéè¦ç¨å°çé
å¥ç»æä½ |
| | | struct ClientInfo { |
| | | int client_id; // 客æ·ç«¯ID |
| | | string version; // 客æ·ç«¯çæ¬ |
| | | }; |
| | | >>>>>>> ea8fe583dba43898151a584ae2c8b4d80d2c4772 |
| | | |
| | | |