{"id":25360541,"url":"https://github.com/k31ner/camtrack","last_synced_at":"2026-04-26T22:31:47.349Z","repository":{"id":263597558,"uuid":"888740848","full_name":"K31NER/Camtrack","owner":"K31NER","description":"Proyecto de visión por computadora usando esp32-cam IA y se usa open cv para el procesamiento y deteccion de informacion. En este caso vamos a detectar colores y rostros y llevar un registro","archived":false,"fork":false,"pushed_at":"2024-11-26T23:55:47.000Z","size":88,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-09T03:34:55.894Z","etag":null,"topics":["camera","data-science","opencv","python3"],"latest_commit_sha":null,"homepage":"https://camtrack.streamlit.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/K31NER.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-14T23:29:02.000Z","updated_at":"2024-11-26T23:55:50.000Z","dependencies_parsed_at":"2024-11-19T12:49:38.505Z","dependency_job_id":"43f8431d-e9b0-408f-b49c-f776dae4b945","html_url":"https://github.com/K31NER/Camtrack","commit_stats":null,"previous_names":["k31ner/camtrack"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/K31NER/Camtrack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/K31NER%2FCamtrack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/K31NER%2FCamtrack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/K31NER%2FCamtrack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/K31NER%2FCamtrack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/K31NER","download_url":"https://codeload.github.com/K31NER/Camtrack/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/K31NER%2FCamtrack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32315711,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T21:09:39.134Z","status":"ssl_error","status_checked_at":"2026-04-26T21:09:21.240Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["camera","data-science","opencv","python3"],"created_at":"2025-02-14T21:54:25.265Z","updated_at":"2026-04-26T22:31:47.320Z","avatar_url":"https://github.com/K31NER.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Configuaracion: \nse necesita de un esp32-cam wifi, con la siguiente configuracion: \n#include \"esp_camera.h\"\n#include \u003cWiFi.h\u003e\n\n//\n// WARNING!!! PSRAM IC required for UXGA resolution and high JPEG quality\n//            Ensure ESP32 Wrover Module or other board with PSRAM is selected\n//            Partial images will be transmitted if image exceeds buffer size\n//\n//            You must select partition scheme from the board menu that has at least 3MB APP space.\n//            Face Recognition is DISABLED for ESP32 and ESP32-S2, because it takes up from 15\n//            seconds to process single frame. Face Detection is ENABLED if PSRAM is enabled as well\n\n// ===================\n// Select camera model\n// ===================\n//#define CAMERA_MODEL_WROVER_KIT // Has PSRAM\n//#define CAMERA_MODEL_ESP_EYE  // Has PSRAM\n//#define CAMERA_MODEL_ESP32S3_EYE // Has PSRAM\n//#define CAMERA_MODEL_M5STACK_PSRAM // Has PSRAM\n//#define CAMERA_MODEL_M5STACK_V2_PSRAM // M5Camera version B Has PSRAM\n//#define CAMERA_MODEL_M5STACK_WIDE // Has PSRAM\n//#define CAMERA_MODEL_M5STACK_ESP32CAM // No PSRAM\n//#define CAMERA_MODEL_M5STACK_UNITCAM // No PSRAM\n//#define CAMERA_MODEL_M5STACK_CAMS3_UNIT  // Has PSRAM\n#define CAMERA_MODEL_AI_THINKER // Has PSRAM\n//#define CAMERA_MODEL_TTGO_T_JOURNAL // No PSRAM\n//#define CAMERA_MODEL_XIAO_ESP32S3 // Has PSRAM\n// ** Espressif Internal Boards **\n//#define CAMERA_MODEL_ESP32_CAM_BOARD\n//#define CAMERA_MODEL_ESP32S2_CAM_BOARD\n//#define CAMERA_MODEL_ESP32S3_CAM_LCD\n//#define CAMERA_MODEL_DFRobot_FireBeetle2_ESP32S3 // Has PSRAM\n//#define CAMERA_MODEL_DFRobot_Romeo_ESP32S3 // Has PSRAM\n#include \"camera_pins.h\"\n// ===========================\n// Enter your WiFi credentials\n// ===========================\nconst char *ssid = \"Nombre de red\";\nconst char *password = \"password\";\n\nvoid startCameraServer();\nvoid setupLedFlash(int pin);\n\nvoid setup() {\n  Serial.begin(115200);\n  Serial.setDebugOutput(true);\n  Serial.println();\n\n  camera_config_t config;\n  config.ledc_channel = LEDC_CHANNEL_0;\n  config.ledc_timer = LEDC_TIMER_0;\n  config.pin_d0 = Y2_GPIO_NUM;\n  config.pin_d1 = Y3_GPIO_NUM;\n  config.pin_d2 = Y4_GPIO_NUM;\n  config.pin_d3 = Y5_GPIO_NUM;\n  config.pin_d4 = Y6_GPIO_NUM;\n  config.pin_d5 = Y7_GPIO_NUM;\n  config.pin_d6 = Y8_GPIO_NUM;\n  config.pin_d7 = Y9_GPIO_NUM;\n  config.pin_xclk = XCLK_GPIO_NUM;\n  config.pin_pclk = PCLK_GPIO_NUM;\n  config.pin_vsync = VSYNC_GPIO_NUM;\n  config.pin_href = HREF_GPIO_NUM;\n  config.pin_sccb_sda = SIOD_GPIO_NUM;\n  config.pin_sccb_scl = SIOC_GPIO_NUM;\n  config.pin_pwdn = PWDN_GPIO_NUM;\n  config.pin_reset = RESET_GPIO_NUM;\n  config.xclk_freq_hz = 20000000;\n  config.frame_size = FRAMESIZE_UXGA;\n  config.pixel_format = PIXFORMAT_JPEG;  // for streaming\n  //config.pixel_format = PIXFORMAT_RGB565; // for face detection/recognition\n  config.grab_mode = CAMERA_GRAB_WHEN_EMPTY;\n  config.fb_location = CAMERA_FB_IN_PSRAM;\n  config.jpeg_quality = 12;\n  config.fb_count = 1;\n\n  // if PSRAM IC present, init with UXGA resolution and higher JPEG quality\n  //                      for larger pre-allocated frame buffer.\n  if (config.pixel_format == PIXFORMAT_JPEG) {\n    if (psramFound()) {\n      config.jpeg_quality = 10;\n      config.fb_count = 2;\n      config.grab_mode = CAMERA_GRAB_LATEST;\n    } else {\n      // Limit the frame size when PSRAM is not available\n      config.frame_size = FRAMESIZE_SVGA;\n      config.fb_location = CAMERA_FB_IN_DRAM;\n    }\n  } else {\n    // Best option for face detection/recognition\n    config.frame_size = FRAMESIZE_240X240;\n#if CONFIG_IDF_TARGET_ESP32S3\n    config.fb_count = 2;\n#endif\n  }\n\n#if defined(CAMERA_MODEL_ESP_EYE)\n  pinMode(13, INPUT_PULLUP);\n  pinMode(14, INPUT_PULLUP);\n#endif\n\n  // camera init\n  esp_err_t err = esp_camera_init(\u0026config);\n  if (err != ESP_OK) {\n    Serial.printf(\"Camera init failed with error 0x%x\", err);\n    return;\n  }\n\n  sensor_t *s = esp_camera_sensor_get();\n  // initial sensors are flipped vertically and colors are a bit saturated\n  if (s-\u003eid.PID == OV3660_PID) {\n    s-\u003eset_vflip(s, 1);        // flip it back\n    s-\u003eset_brightness(s, 1);   // up the brightness just a bit\n    s-\u003eset_saturation(s, -2);  // lower the saturation\n  }\n  // drop down frame size for higher initial frame rate\n  if (config.pixel_format == PIXFORMAT_JPEG) {\n    s-\u003eset_framesize(s, FRAMESIZE_QVGA);\n  }\n\n#if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)\n  s-\u003eset_vflip(s, 1);\n  s-\u003eset_hmirror(s, 1);\n#endif\n\n#if defined(CAMERA_MODEL_ESP32S3_EYE)\n  s-\u003eset_vflip(s, 1);\n#endif\n\n// Setup LED FLash if LED pin is defined in camera_pins.h\n#if defined(LED_GPIO_NUM)\n  setupLedFlash(LED_GPIO_NUM);\n#endif\n\n  WiFi.begin(ssid, password);\n  WiFi.setSleep(false);\n\n  while (WiFi.status() != WL_CONNECTED) {\n    delay(500);\n    Serial.print(\".\");\n  }\n  Serial.println(\"\");\n  Serial.println(\"WiFi connected\");\n\n  startCameraServer();\n\n  Serial.print(\"Camera Ready! Use 'http://\");\n  Serial.print(WiFi.localIP());\n  Serial.println(\"' to connect\");\n}\n\nvoid loop() { \n  delay(10000);\n}\n\nLuego de esto dara una url que se pondra en el archivo conexiones.py.\nNOTA: recordar que el modulo esp32-cam debe estar en la mis red wifi que el pc \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk31ner%2Fcamtrack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fk31ner%2Fcamtrack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk31ner%2Fcamtrack/lists"}