Autonomous activity monitoring system and method

The system addresses the challenge of recording recreational sports by using AI-enabled remote cameras and processors to automatically capture and process videos, enhancing athlete analysis and sharing.

JP7879903B2Active Publication Date: 2026-06-24HOLE IN ONE MEDIA INC

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
HOLE IN ONE MEDIA INC
Filing Date
2024-08-08
Publication Date
2026-06-24

AI Technical Summary

Technical Problem

Recreational athletes face challenges in recording their sports activities due to the lack of widespread video recording and broadcasting, and existing body-mounted cameras fail to capture their movements effectively, especially in unpredictable outdoor locations, requiring manual setup or third-party assistance.

Method used

A system with remote cameras, processors, and AI logic for automatic recording and processing of sports activities, using GPS, face recognition, and object detection to identify users and enhance video with graphics, transmitting processed videos through a remote system for access via mobile apps.

Benefits of technology

Enables automatic and efficient recording of sports activities with enhanced video processing, allowing athletes to analyze their performance and share recordings, reducing the need for manual setup and improving the quality of captured footage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007879903000001
    Figure 0007879903000001
  • Figure 0007879903000002
    Figure 0007879903000002
  • Figure 0007879903000003
    Figure 0007879903000003
Patent Text Reader

Abstract

To improve a video recording system for an athletic event.SOLUTION: A system 100 may include AI logic configured to identify a user recorded within a video frame captured by cameras 102, 104, 106, 108. The system may also detect and identify a user when the user is located within a predetermined area. The system may include a video processing engine configured to process images within the video frame to identify the user and may modify and format the video upon identifying the user and the activity. The system may include a communication module to communicate formatted video to a remote video processing system 118, which may further process the video and allow access to a mobile app of the user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross - Reference to Related Applications This application claims the benefit of U.S. Provisional Patent Application No. 62 / 847,052, filed on May 13, 2019, the entire contents of which are incorporated herein by reference in their entirety.

[0002] Technical Field The present disclosure is directed to video recording of activities. More specifically, the present disclosure is directed to automatically monitoring and recording sports activities such as golf using a video camera and computer processing.

Background Art

[0003] Background Art Amateur and professional athletes participate in various sports events and competitions. In the case of professional sports, competitions are generally recorded and broadcast on television and / or the Internet. Broadcasters often cooperate with athletes or the organizers of sports events to provide access to the event and provide the equipment necessary for recording and broadcasting the event, such as multiple cameras and microphones distributed at fixed or movable positions. These arrangements are common in most professional spectator sports such as golf, tennis, football, baseball, basketball, soccer, hockey, auto racing, cycling, etc. These arrangements are also common in college track and field events, and the events are often covered with the same or similar types of access and cameras.

Summary of the Invention

Problems to be Solved by the Invention

[0004] For other athletic events, such as typical recreational activities performed by amateur, non-college athletes, video recording and / or broadcasting is not common due to the lack of widespread public demand for watching recreational golf, tennis, basketball, etc. However, in many cases, participating athletes would like their activities recorded, similar to the recordings provided for professional events. Such recordings can later be viewed for entertainment or evaluation purposes. For example, a golfer might want to record their swing so they can analyze the mechanics of their swing to see if there is room for improvement. Similarly, a golfer might want to record their shots. Basketball players, likewise, might want to record their shooting motion and the resulting shot, or their movements on the court, to evaluate the effectiveness of certain offensive plays or defensive positions.

[0005] However, recreational athletes may need to make their own arrangements for recording events. Athletes may need to provide and set up their own recording equipment, configuring it effectively to ensure the event is adequately recorded. Alternatively, athletes may need to secure a third-party service that can handle the recording equipment to capture various views and adapt to the players' movements.

[0006] In some cases, athletes may attach cameras to their bodies to record specific aspects of an event. For example, they might use a head-mounted camera to record a particular cycling route. Similarly, rock climbers may use body-mounted cameras to record a particular climbing route. However, these body-mounted cameras typically cannot record the movements of the athlete's body in particular. There are limitations in several aspects. Furthermore, because head-mounted cameras are typically oriented according to the user's head position, they may only be able to record a limited area corresponding to what the athlete is looking at. Often, the camera does not adjust to eye movements or changes in focus, so it may not even be able to record what the athlete is focusing on.

[0007] In some sports venues with known and consistent area, such as basketball courts and indoor tennis courts, recording equipment may be pre-installed. However, this is usually not possible in many outdoor recreational activities, as there are countless possible locations where athletes may be. For example, on a golf course, it is difficult to reliably predict the trajectory of a golf ball or the location of a golfer on the course, as each location depends on the previous location and the ball's flight from the location before that. In the case of runners, cyclists, climbers, etc., their locations can be even more unpredictable. Therefore, to record these types of activities, a separate person is usually needed for the recreational athlete to follow the activity, record it, and provide usable recordings.

[0008] Considering the above, the recording system for sports events can be improved. [Means for solving the problem]

[0009] Summary of the Invention One aspect of this disclosure is to provide a system for automatically recording exercise events.

[0010] Another aspect of this disclosure is to provide a system for automatically processing recordings of exercise events and displaying the recordings along with additional information.

[0011] Another aspect of this disclosure is to provide a system for automatically recording golf shots and processing images of golf shots.

[0012] Taking these and other aspects into consideration, a system for automatically recording and processing activities is provided. The system includes a first remote camera positioned at a first geographic location to record video of a first predetermined activity. The system further includes a first processor and memory operably associated with and communicating with the first remote camera. The first processor and memory are located near the first geographic location. The system further includes a local video processing engine associated with the first processor and memory. The local video processing engine is configured to process frames of video captured by the first remote camera of a first user participating in the first predetermined activity. The first processor is further configured to modify the video upon identifying the first user and the first predetermined activity. The system further includes a communication module that can transmit the formatted video to a remote video processing system. The remote video processing system is configured to further process the formatted video to enable access to the processed video to the first user.

[0013] In one embodiment, the processor is configured to detect the location of a first user using one or more of the following: GPS location, face recognition, object recognition, clothing recognition, motion detection, RFID detection, Bluetooth detection, Wi-Fi detection, radar detection, and thermal detection.

[0014] In one embodiment, the system includes artificial intelligence (AI) logic accessible to a first processor. The artificial intelligence (AI) logic comprises logic for identifying one or more users recorded in video frames captured by a first remote camera.

[0015] In one embodiment, the first processor is configured to identify a first user, automatically record the first user when the first user is placed within a first predetermined area, associate a first recording of the first user with the first user, associate a second recording of the first user with the first user, process the first and second recordings of the first user, and define a formatted video associated with the first user.

[0016] In one embodiment, the first processor is configured to detect and identify a second user within a first predetermined area.

[0017] In one embodiment, the first processor is configured to automatically record a second user, and the first processor is configured to process recordings associated with the second user.

[0018] In one embodiment, the first processor is configured to determine whether the first or second user is to be recorded.

[0019] In one embodiment, the first processor is configured to send a message to the first or second user indicating that the first or second user is being recorded.

[0020] In one embodiment, the first processor is configured to generate a location grid over at least a portion of the first geographic location.

[0021] In one embodiment, the first processor is configured to detect the location of a first user in a location grid, and further to detect the location of objects associated with the first user in the location grid.

[0022] In one embodiment, the first processor is configured to monitor the location of the first user while the first user is located within a first geographical location.

[0023] In one aspect, the first processor is configured to add graphic elements to the first processed recording based on data associated with the recording.

[0024] In one aspect, the graphic elements can include one or more graphic elements added to one or more frames of the video, and the graphic elements can include text information indicating the position of the video, one or more names of the location where the video was recorded, the name of the first user, the date on which the video was recorded, a logo or other marketing image associated with the location, a colored trace created to indicate a graphic line between frames of a moving object, a graphic object, and augmented reality elements.

[0025] In one aspect, the colored trace includes creating a trace for one or more of the flight path of a golf ball, the running path of a football player, the flight path of a football, the running path of a soccer player, the flight path of a soccer ball, the path of a downhill skier or snowboarder, the swimming path of a swimmer, the swimming path of a fish caught by the first user, the navigation path of a catamaran or a boat race boat, and the cycling path of a mountain bike or a racing bike.

[0026] In another aspect, a system for automatically recording and processing activities is provided. The system includes a first remote camera disposed at a first geographical location for recording video of a first predetermined activity. The system further includes a first processor and a memory operably associated with and communicating with the first remote camera. The first processor and the memory are is located near the first geographical location. The system further includes artificial intelligence (AI) logic accessible to the processor. The artificial intelligence (AI) is configured with logic for identifying a user recorded within a video frame captured by the first remote camera. The system further includes a local video processing engine associated with the first processor and memory. The local video processing engine is configured to process an image within the video frame to identify the first user. The first processor is further configured to change the video when the first user and the first predetermined activity are identified. The system further includes a communication module capable of transmitting the formatted video to a remote video processing system. The remote video processing system is configured to further process the formatted video and enable access to a mobile application of the identified first user.

[0027] In one aspect, the AI logic can identify one or more of a golfer, a golf ball, a shirt, the color of the shirt, pants, the color of the pants, a skirt, the color of the skirt, a hat, the color of the hat, a golf glove, golf shoes, a golf cart, one or more people riding in the golf cart, a golf tee, a golf club, an iron, a driver, a utility club, a putter, a wedge, a logo on the golf ball, a male, a female, a child, a young person, a logo on the shirt, a caddy, a marshal, a brand, a left-handed golfer, a right-handed golfer, a visor, glasses, sunglasses, a drink, a tee box, the color of the tee box, trees, a fairway, a cart path, a green, a pin, a hole, a sand bunker, a water hazard, a grass hazard, a forest, out of bounds, a rough, a first cut of the green, a second cut of the green, a bird, an insect, an animal, the distance from the tee to the pin, the distance from the tee to in front of the green, the distance from the tee to the center of the green, the distance from the tee to behind the green, a red stake, a white stake, a yellow stake, a change in elevation, clouds, rain, snow, fog, haze, mud, wind, the terrain of the green, or the cut of the hole.

[0028] In one embodiment, the AI ​​logic further includes logic that can identify activities that include one or more of the following: golf activities, football activities, soccer activities, lacrosse activities, baseball activities, basketball activities, tennis activities, pickleball activities, beanbag toss activities, bowling activities, billiards activities, swimming activities, diving activities, racing activities, hockey activities, field hockey activities, disc golf activities, rugby activities, skiing activities, snowboarding activities, cycling activities, fishing activities, boating activities, and sports activities.

[0029] In one embodiment, the remote video processing system further includes a remote video processing management system that communicates with a first processor. The remote video processing management system is configured to receive a first set of recorded videos and to process the first set of recorded videos to create AI logic. Processing the first set of recorded videos includes tagging one or more uniquely identified objects within one or more frames of each of the recorded videos. Tagging includes tags for identifying users and user activities within the recorded videos. The processing further includes creating AI logic, including a neural network of the tagged objects, and delivering the AI ​​logic to the first processor for use when processing the videos at a given location. The processing further includes receiving formatted videos from a communication module and modifying the formatted videos based on the use of a mobile application.

[0030] In one embodiment, the system includes a remote video processing management system that communicates with a video processing system. The remote video processing management system includes a network processor coupled to cloud storage that stores processed video received from the video processing system and a first remote camera, an artificial intelligence (AI) enabled graphics processing engine configured to access and process formatted video, and formatted This includes a graphics asset with access to an AI-enabled graphics processing engine that is added to one or more frames of the video, a format manager configured to format the video based on the destination of the formatted video, and a distribution manager with access to a network processor. The distribution manager is configured to deliver the formatted video to the destination.

[0031] In one embodiment, the system includes a mobile app associated with a distribution manager. The mobile app includes content provided by the distribution manager. This content includes one or more formatted videos output by a remote video processing management system, a list of videos created using one or more activities, a list of locations where one or more videos were recorded, social media features for sharing the formatted videos, and a virtual coaching feature configured to allow a coach to access and comment on a first user's formatted videos.

[0032] In one embodiment, a processor is configured to identify a second user recorded within video frames captured by a first remote camera. The processor is configured to extract video frames from the first video, which include the second user. The processor is configured to combine the extracted video frames into a second formatted video, which includes the second user. A communication module transmits the second formatted video to a remote video processing system. The remote video processing system is configured to further process the video and enable the identified second user to access a mobile application.

[0033] In one embodiment, the remote video processing management system is further configured to identify a second user who is near a first user during a recorded activity, to initiate access to the first user of the second video generated by the remote video processing system, and to enable the first user to access the second video using a mobile app.

[0034] In another embodiment, a method is provided for automatically recording and providing video. This method includes recording video of a given activity using a first remote camera located at a first geographical location. This method further includes processing the video at the first geographical location. The processing includes identifying a first user performing the given activity, extracting image frames from the video that include the first user during the given activity, and merging the extracted image frames to produce a formatted video. This method includes outputting the formatted video to a remote video processing system for further processing.

[0035] In one embodiment, the method further includes identifying a second user performing a predetermined activity in the video, extracting additional image frames containing the second user performing the predetermined activity, merging the additional image frames to generate a second formatted video, and outputting the second formatted video to a remote video processing system.

[0036] In one embodiment, the method includes: setting up a second remote camera at a first geographic location; identifying the first geographic location as a golf hole on a golf course; setting up a first geofence around the tee box of the golf hole; setting up a second geofence around the green of the golf hole; detecting when a first user is inside the first geofence; activating recording on the first and second remote cameras in response to identifying a first user inside the first geofence to record a predetermined activity; detecting when a first user is inside the second geofence; detecting when a first user leaves the second geofence; and disabling recording of a predetermined activity when a first user leaves the second geofence.

[0037] In one embodiment, the first geofence includes a first geofence radius, and the second geofence includes a second geofence radius different from that of the first geofence radius.

[0038] In one embodiment, the first geofence includes a first geofence size, and the second geofence includes a second geofence size different from the first geofence size.

[0039] In one embodiment, the method includes identifying a predetermined activity as a golf activity; extracting a first image frame and identifying a golf ball at a first position within the first image frame; extracting a second image frame at a later time than the first image frame; determining whether the golf ball has moved to a different position within the second image frame; drawing a colored line extending from within the second image frame to the first position; repeating the process of drawing lines in subsequent frames until the golf ball is no longer visible; estimating where the golf ball will land; and drawing a colored line to the estimated landing position of the golf ball.

[0040] In one embodiment, the method further includes creating AI logic using previously recorded activities to identify a specific activity, using the AI ​​logic to identify the specific activity, identifying a first user performing the specific activity, initiating the extraction of image frames of the specific activity, and combining the extracted image frames of the specific activity.

[0041] In one embodiment, the creation of AI logic further includes the steps of identifying a golfer holding a golf club in a previously recorded video, tagging golfers holding specific clothing, golf clubs, and golf balls, repeating the identification and tagging steps for a number of previously recorded activities and image frames, generating AI logic using the tagged images, and using the AI ​​logic on a golf course equipped with a first remote camera.

[0042] In another embodiment, a method is provided for automatically recording athletic performance. This method includes: a processor detecting that at least one player is located within a given area; identifying a first player among the at least one player; automatically recording the performance of the first player with at least one camera operably coupled to the processor and defining a first recording; automatically saving the first recording to a database operably coupled to the processor; automatically correlating the first recording with the first player; and automatically processing the first recording and defining a first processed recording.

[0043] In one embodiment, at least one camera includes a first camera and a second camera. In another embodiment, the method includes a processor identifying a first geographic location of a first camera and a second geographic location of a second camera.

[0044] In another embodiment, this method includes identifying a predetermined region in the processor. In another embodiment, this method includes defining a positional grid within a given area.

[0045] In another embodiment, this method includes detecting an object associated with a first player at a grid position within a position grid.

[0046] In another aspect, this method automatically adds graphics associated with an object's location to a first processed recording in response to detecting an object at a grid location. Includes.

[0047] In another embodiment, the identification of the first player is determined via image recognition. In another embodiment, this method includes the processor communicating a signal to a mobile device associated with the first player, instructing the player to perform an action.

[0048] In another embodiment, this method includes automatically sending the first processed recording to a first user.

[0049] Brief explanation of the drawing Other aspects of this disclosure will be readily apparent, as they will be better understood by referring to the following detailed description when considered in relation to the attached drawings. [Brief explanation of the drawing]

[0050] [Figure 1] This is a block diagram showing a video processing system for detecting and recording activity according to one aspect of the present disclosure. [Figure 2] This is a block diagram showing an AI-enabled camera for use with a video processing system, according to one aspect of the present disclosure. [Figure 3A] This is a block diagram showing an AI-enabled video processing system for local video processing according to one aspect of the present disclosure. [Figure 3B]This is a flowchart of a method for local video processing according to one aspect of the present disclosure. [Figure 4A] This is a block diagram showing an AI-enabled video processing system for remote video processing according to one aspect of the present disclosure. [Figure 4B] This is a flowchart of a method for processing video using AI-enabled remote video processing according to one aspect of the present disclosure. [Figure 5] This is a user interface illustrating a mobile device application according to one aspect of the present disclosure. [Figure 6] This is a block diagram showing an example of an AI-enabled video recording system installed on a golf course, according to one aspect of the present disclosure. [Figure 7] One aspect of a method for an exercise monitoring system according to one aspect of this disclosure is shown. [Figure 8] One aspect of a method for an exercise monitoring system according to one aspect of this disclosure is shown. [Modes for carrying out the invention]

[0051] Modes for carrying out the invention The following description, combined with the figures, is provided to aid in understanding the teachings disclosed herein. The following description focuses on specific implementations and embodiments of the teachings. This focus is provided to aid in illustrating the teachings and should not be construed as a limitation on the scope or applicability of the teachings. However, other teachings can certainly be used in this application. These teachings can also be used in other applications and in several different types of architectures, including distributed computing architectures, client / server architectures, middleware server architectures and related components.

[0052] Devices or programs that communicate with each other do not need to communicate continuously unless otherwise specified. Furthermore, devices or programs that communicate with each other may communicate directly or indirectly through one or more intermediaries.

[0053] The embodiments described below partially describe a distributed computing solution that manages all or part of the communication interactions between network elements. In this context, Communication interactions can be intentions to send information, transmissions of information, requests for information, receptions of information, reception of requests for information, or any combination thereof. Therefore, communication interactions can be unidirectional, bidirectional, multidirectional, or any combination thereof. In some situations, communication interactions can be relatively complex and involve two or more network elements. For example, a communication interaction could be a "conversation" or a series of related communications between a client and a server, where each network element sends and receives information with the other elements. Communication interactions between network elements are not necessarily limited to one specific form. Network elements can be nodes, hardware, software, firmware, middleware, other components of a computing system, or any combination thereof.

[0054] For the purposes of this disclosure, the exercise monitoring and recording system may include any means or set of means capable of operating to compute, classify, process, transmit, receive, retrieve, transmit, switch, store, display, manifest, detect, record, play back, handle, or utilize any form of information, intelligence, or data for business, scientific, control, entertainment, or other purposes. For example, the exercise monitoring and recording system may be a personal computer, PDA, home electronic device, smartphone, cellular phone or mobile phone, set-top box, digital media subscriber module, cable modem, fiber optic communication device, media gateway, home media management system, network server or storage device, switch router, wireless router, other network communication device, or other suitable device, which may vary in size, shape, performance, function, and price.

[0055] The system may include memory, one or more processing resources or controllers, such as a central processing unit (CPU), and hardware or software control logic. Additional components of the system may include one or more storage devices and one or more wireless, wired, or any combination thereof communication ports for communicating with various input / output (I / O) devices such as external devices and keyboards, mice, and video displays. The motion monitoring and recording system may also include one or more buses capable of transmitting communications between various hardware components.

[0056] In the following descriptions, flowcharts of methods or algorithms may be presented as a series of sequential actions. Unless otherwise specified, the order of actions and the parties performing them can be freely changed without deviating from the scope of the teaching. Actions can be added, deleted, or modified in several ways. Similarly, actions can be rearranged or looped. Furthermore, while processes, methods, algorithms, etc., may be described sequentially, such processes, methods, algorithms, or any combination thereof may be operable to be executed in an alternative order. In addition, some actions within a process, method, or algorithm may be executed simultaneously at least at some point (e.g., actions executed in parallel), and may be executed as a whole, in part, or in any combination thereof.

[0057] As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having,” or any other variation thereof are intended to cover non-exclusive inclusion. For example, a process, method, article, or apparatus that includes a list of features is not necessarily limited to those features, but may include other features not expressly listed or inherent in such process, method, article, or apparatus. Furthermore, unless expressly stated otherwise, “or” refers to an inclusive OR and not an exclusive OR. For example, condition A or B is either This condition is satisfied by either: A is true (or exists) and B is false (or does not exist); A is false (or does not exist) and B is true (or exists); or both A and B are true (or exist).

[0058] Furthermore, the use of "a" or "an" is used to describe elements and components described herein. This is done simply for convenience and to give a general sense of the scope of the invention. This description should be read as including one or at least one, and the singular form also includes the plural form, and vice versa unless it is clear that they have different meanings. For example, if a single device is described herein, multiple devices may be used instead of a single device. Similarly, if multiple devices are described herein, a single device may be used instead of those devices.

[0059] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as generally understood by those skilled in the art. Methods and materials similar to or equivalent to those described herein may be used in carrying out or testing embodiments of the present invention, but suitable methods and materials are described below. All publications, patent applications, patents, and other references referenced herein are incorporated by reference in their entirety unless a specific section is cited. In case of any conflict, this specification, including definitions, shall prevail. Furthermore, materials, methods, and examples are illustrative and not intended to limit the scope of the invention.

[0060] To the extent not described herein, many details concerning specific materials, processing procedures, and circuits are conventional and can be found in textbooks and other sources within computing, electronics, and software technologies.

[0061] The description also uses the terms artificial intelligence (AI) or AI logic, machine learning, and neural networks. AI or AI logic encompasses several categories of techniques that enable computers to mimic human capabilities. AI techniques or logic include machine learning, speech and language processing, expert systems, and robotics. Machine learning is a subset of AI that enables computers to improve tasks through experience. Machine learning includes traditional statistics-based approaches such as regression analysis and newer techniques such as deep learning. Deep learning trains multi-level neural networks using large amounts of historical data to draw conclusions about new data. Throughout the specification, the description uses AI logic, deploying deep learning in the form of neural networks, to identify the class and location of objects within video images and segments. Deep learning is also used to identify characteristic activities or sub-activities within video images and segments. In some forms, statistics-based machine learning is used to characterize the movement or orientation of objects within video images and segments.

[0062] Next, exemplary embodiments of autonomous recording and processing systems will be described in more detail. Each of these exemplary embodiments is provided to ensure that this disclosure is complete and fully conveys to those skilled in the art the scope of the concepts, features, and advantages of the present invention. For this purpose, numerous specific details are given, including examples of specific components and methods related to the system, in order to provide a complete understanding of each embodiment relating to this disclosure. However, as will be apparent to those skilled in the art, it is not necessary to use all specific details described herein, and the exemplary embodiments can be embodied in many different forms and should therefore not be construed or understood to limit the scope of the disclosure.

[0063] Various aspects of this disclosure generally involve hardware and software distributed across various systems. This may refer to equipment, modules, etc. Various hardware and software can be used to facilitate the features and functions described herein, including the NVIDIA Jetson TX2 computer, a 256-core NVIDIA Pascal GPU architecture with 256 NVIDIA CUDA cores, as well as a dual-core NVIDIA Denver 2 64-bit CPU and a quad-core ARM Cortex-A57 MPCore (8GB 128-bit LPDDR4 memory and 32GB This includes, but is not limited to, eMMC storage. Software includes a Linux® operating system with Python-programmed applications, the OpenCV image processing library, AWS Greengrass ML Model Development and Execution, and video editing software using the OpenCV image processing library and Python programming. Various cloud services are available, as well as AWS S3 and AWS Glacier for video storage for storing and sending videos, and AWS CloudFront for content delivery and distribution. Cloud services for processing and editing videos may include Python and OpenCV running on AWS EC2 servers. Cloud services for converting videos from one format to another may include AWS Elemental MediaConvert. Cloud services and AI for generating neural networks may include AWS SageMaker for building, training, tuning and evaluating machine learning models, including the Keras / TensorFlow development framework and SageMaker NEO for preparing models to deploy to a local computer.

[0064] The cameras used in the systems described herein may be HD cameras or 4K cameras.

[0065] The 4K camera may be Hanwha model PNP-9200RH, having specifications and operating manuals incorporated herein by reference. The Hanwha camera, model PNP-9200RH, is a 4K PTZ camera with the following specifications:

[0066] Imaging device sensor: 1 / 2.5” 8MP CMOS Resolution: 3,840(H) x 2,160(V), 8.00M pixels Focal length (zoom ratio): 4.8~96mm (20x optical zoom) Field of view H / V: 65.1 degrees (wide) ~ 3.8 degrees (telephoto) / 38.4 degrees (wide) ~ 2.2 degrees (telephoto) Autofocus & Auto Iris Infrared illumination 120 decibel dynamic range Pan range / speed: 360 degrees / 400 degrees / second Tilt range / speed: 190 degrees / 300 degrees / second 16x digital zoom Application Programming Interface: ONVIF Profile S / G Video compression formats: H.265 / H.264, MJPEG Maximum frame rate H.265 / H.264 at all resolutions: 30fps Audio input selectable (microphone input / line input) Ethernet (registered trademark): 10 / 100 BASE-T Operating temperature / humidity: -58°F to +131°F / less than 90%RH Intrusion protection: IP66 / Destruction resistance IK10 Input voltage: 24V AC Power consumption: 90W (heater on, IR on) The camera could be an HD camera capable of recording in high resolution. Therefore, the camera is a reference This may be the Hanwha HD 1080p PTZ camera model number XNP-6321H, with the specifications and operating manual incorporated herein. The Hanwha camera, model XNP-6321H, is an HD 1080p PTZ camera with the following specifications:

[0067] Imaging device: 1 / 2.8” 2.4M CMOS Resolution: 1,981(H)x1,288(V), 2.55M Focal length (zoom ratio): 4.44~142.6mm (32x optical zoom) Angle of view H / V: 61.8 degrees (wide) ~ 2.19 degrees (telephoto) / 36.2 degrees (wide) ~ 1.24 degrees (telephoto) Autofocus & Auto Iris IR lighting 150 decibel dynamic range Pan range / speed: 360 degrees / 700 degrees / second Tilt range / speed: 210 degrees / 700 degrees / second Digital zoom: 32x Application Programming Interface: ONVIF Profile S / G Video compression formats: H.265 / H.264, MJPEG Maximum frame rate H.265 / H.264: 60fps at all resolutions Audio input selectable (microphone input / line input) Ethernet: 10 / 100 BASE-T Operating temperature / humidity: -31°F to +131°F / less than 90%RH Intrusion protection: IP66 / Destruction resistance IK10 Input voltage: 24V AC or POE+ Power consumption: Maximum 24W (heater off), maximum 65W (heater on, 24V AC) Referring here to Figure 1, a block diagram is provided showing a video processing system for detecting and recording activity. The video processing system is generally shown in System 100. For illustrative purposes, various embodiments and aspects of System 100 are described and illustrated herein, in which various system modules are distributed across different interconnected systems, hardware, and software, communicating with each other both locally and remotely via the Internet / cloud, either wired or wirelessly. Various functions of System 100 described herein can be achieved using a computer including a processor and non-temporary computer-readable media or memory, where instructions stored in the computer are executed by the processor. System 100 can function automatically according to rules defined by various algorithms. It will be further understood that various processors, memories, and instructions can be distributed between various systems and via the cloud, some instructions or processes can occur remotely, and communication can occur between systems or between modules.

[0068] In one embodiment, the system 100 may include various combinations of additional cameras, commonly referred to as a first remote camera 102, a second remote camera 104, a third remote camera 106, or an Nth remote camera 108. The system 100 also includes a network switch 110 that connects one or more remote cameras 102-108 to an AI-enabled video processor 112. The system 100 includes non-temporary memory 111 connected to the AI-enabled processor 112. The remote cameras 102-108 may be operably connected to the network switch 110 and may be controlled by the AI-enabled video processor 112. In other embodiments, the cameras 102-108 may operate independently of onboard functions for recording video, as described herein.

[0069] System 100 may also include a modem 114, such as a cellular modem or a hardwired modem, configured to communicate or transmit data over a network such as the Internet / cloud 116. Modem 114 may support 3G, 4G, 5G, and Alternatively, it may be a cellular modem capable of communicating using other communication standards. In other forms, modem 114 may be a wired modem capable of communicating using a broadband connection such as Ethernet, or via a fiber optic connection, or via various combinations thereof.

[0070] In one embodiment, the modem 114 may be configured to communicate raw video data captured by remote cameras 102-108 for further processing, or the modem 114 may be configured to communicate processed video created by the AI-enabled processor 112. Thus, in one embodiment, the modem 114 may be configured to communicate with the Internet / cloud 116, or to communicate operationally with the Internet / cloud 116.

[0071] In a further embodiment, system 100 may further include a remote video processing management system 118 connected to a modem 114 via the Internet / cloud 116. The remote video processing management system 118 can automatically process video and manage the distribution of the created video files. System 100 may further include a content management and distribution system 120 that communicates with the remote video processing management system 118. The content management and distribution system 120 may be configured to further control the distribution of video created by system 100.

[0072] For example, in response to receiving raw video data in the remote video processing management system 118, system 100 may be configured to automatically process the video according to predetermined instructions. In response to the video processing, content management and distribution system 120 can receive the processed video and, in response, send or make the processed video available to end users. Thus, system 100 can use video processing located near the remote camera to detect video activity and process the video locally to the camera, in a cloud service, or in one or more forms of a combination thereof.

[0073] In one embodiment, system 100 can be used to detect golfers in a golf environment and record and communicate the golfers' activities in the form of processed video. During use of system 100 in a golf environment, system 100 may be configured to automatically capture video data of golfers via cameras 102-108. In response to the capture of video data, system 100 can receive the video data from cameras 102-108 with an AI-enabled processor 112. The AI-enabled processor 112 can automatically process the video data and create a processed video. For example, the AI-enabled processor 112 can be used to detect golfers using image data from the video and a neural network created to detect people in the video or image frames. Once a person is detected, a neural network (NN) can be created to identify other elements of the golfer, such as the golfer's clothing, shoes, hat, golf club, golf ball, or various other elements or combinations of elements specific to golf activities. Once a golfer is identified, system 100 can capture and process video of that particular golfer. In response to the creation of processed video, the AI-enabled processor 112 can transmit video data. Processing of video data can occur locally or remotely. For example, the AI-enabled processor 112 may be part of the cameras 102-108, in a computer or processing system communicating with the cameras 102-108, or in the cloud.

[0074] In another embodiment, the system 100 may be configured to detect the presence of one or more golfers within a predetermined area related to cameras 102-108. For example, the system 100 can detect the presence of cameras 102-108 via a signal transmitted to an AI-enabled processor 112. The system is configured to detect when a golfer has reached a hole on a calibrated golf course. The system 100 is further configured to detect when one or more golfers have completed a hole and left it. In this way, a limited amount of video can be captured and recorded only when a golfer is present, thereby reducing the amount of memory and processing required to store, process, and transmit the video.

[0075] In a further embodiment described in more detail below, a golfer may associate a transmitter with himself or other GPS or location-based services enabled device such as a mobile device, smartphone or tablet, or other GPS or location-based services enabled device, RFID device, Bluetooth-enabled device, or any combination thereof, which can communicate with system 100 to indicate the golfer's presence. In another embodiment, system 100 may be configured to communicate with a golf cart having a GPS or location-based services tracking system integrated into the golf cart to detect the location of the golfer and the golfer.

[0076] Therefore, for example, before automatically recording video with cameras 102-108, system 100 can receive proximity signals from devices associated with the golfer. In response to the reception of proximity signals, system 100 can automatically start recording the hole via the cameras.

[0077] According to another aspect of this disclosure, one or more remote cameras 102-108 may include GPS or location-based positioning functions, such as GPS or location-based service devices installed on one or more remote cameras 102-108, and as a result, the GPS coordinates of the remote cameras 102-108 may be known. Using the GPS or location-based service devices, specific GPS coordinates of each camera 102-108 can be detected and transmitted to system 100, thereby providing a reference point to system 100 and providing system 100 with location data for each remote camera 102-108, so that other objects on the golf hole and within the field of view of the remote cameras 102-108 can be detected by the cameras 102-108. Thus, system 100 can triangulate to determine the position of objects relative to the remote cameras 102-108.

[0078] In another embodiment, during the initial setup phase of the system 100 on a golf course, the remote cameras 102-108 may be installed in fixed positions determined by the golf hole installer, depending on the specific layout of the golf hole. Typically, each golf hole is unique and has a unique layout between the tee box and the green, and in the area in between, including different grass cuts (fairway, first cut, rough, fringe, etc.). In one embodiment, the first camera 102 may be positioned behind the tee box, and the second camera 104 may be positioned behind the green. When installed, the remote cameras 102-108 are typically positioned not in the expected path of ball flight. In other words, the first remote camera 102 can be positioned behind the golfer when the golfer is standing on the tee box and facing the green, and the second remote camera 104 can be positioned across the green in the direction of the tee box. Thus, the remote cameras 102-108 are positioned so that they are unlikely to be impacted by the golf ball. It will be understood that system 100 can include multiple different cameras in various different locations.

[0079] Referring here to Figure 2, a block diagram is provided showing an AI-enabled camera for use in a video processing system. The AI-enabled camera, commonly shown in 200, includes an onboard processor 204 and one or more sensors 206, 208, 210, which may be configured to send signals and / or video to the processor 204.

[0080] Sensors 206-210 may include optical sensors and may include, in some form, various types or combinations of sensors, including but not limited to optical, motion, infrared, radar or Doppler sensors, Bluetooth sensors, Wi-Fi sensors, RFID sensors, or various combinations thereof. Camera 202 may further include memory 212 that communicates with processor 204 and an embedded AI module 214 that communicates with memory 212. The AI ​​module 214 may be in the form of software stored in memory 212 and executed by processor 204.

[0081] Camera 202 may further include a communication module 216 that communicates with a processor 204 and a power module 218. The communication module 216 may be wired or wireless, such as fiber optic, Ethernet, or Power over Ethernet (PoE). The wireless communication may be Wi-Fi or other 802.11 communication, Bluetooth®, cellular communication, or various combinations thereof. The power module 218 may be configured to supply power to camera 202. The power module 208 may be in the form of a battery connected to a power grid or other power source or a hardwired input. According to one embodiment, power can be provided using a PoE connection sufficient to power camera 202 over a given distance. Thus, with reference to the automatic video recording and processing steps described herein, camera 202 can perform these steps, and in response to the creation of processed video, camera 202 can transmit the processed video to an end user.

[0082] Camera 202 may further include a control module 220 that communicates with camera sensors 206-210. The control module 220 communicates with a processor 204, receives signals from sensors 206-210, and can provide signals to the processor 204 to control camera 202. The control module 220 may be configured to pan, tilt, or zoom camera 202. Camera 202 can be used with any other camera described herein. The various cameras described herein may include some or all of the functions associated with camera 202. For example, the various cameras described herein may include pan, tilt, and zoom functions, but may not include, for example, onboard AI processing. For example, in one embodiment, in response to the detection of one or more golfers, camera 202 may generate a control signal for the control module 220 to automatically tilt / pan or zoom camera 202.

[0083] In one embodiment, camera 202 may be a Hanwha 4K camera, model PNP-9200RH, having specifications and an operating manual incorporated herein by reference. Camera 202 as a Hanwha camera, model PNO-9200RH, is a 4K PTZ camera having the following specifications:

[0084] Imaging device sensor: 1 / 2.5” 8MP CMOS Resolution: 3,840(H) x 2,160(V), 8.00M pixels Focal length (zoom ratio): 4.8~96mm (20x optical zoom) Field of view H / V: 65.1 degrees (wide) ~ 3.8 degrees (telephoto) / 38.4 degrees (wide) ~ 2.2 degrees (telephoto) Autofocus & Auto Iris Infrared illumination 120 decibel dynamic range Pan range / speed: 360 degrees / 400 degrees / second Tilt range / speed: 190 degrees / 300 degrees / second 16x digital zoom Application Programming Interface: ONVIF Profile S / G Video compression formats: H.265 / H.264, MJPEG Maximum frame rate H.265 / H.264 at all resolutions: 30fps Audio input selectable (microphone input / line input) Ethernet: 10 / 100 BASE-T Operating temperature / humidity: -58°F to +131°F / less than 90%RH Intrusion protection: IP66 / Destruction resistance IK10 Input voltage: 24V AC Power consumption: 90W (heater on, IR on) Alternatively, camera 202 may be provided as an HD camera capable of recording in high resolution. Thus, camera 202 may include the Hanwha HD 1080p PTZ camera of model number XNP-6321H, with specifications and operating manuals incorporated herein by reference. Camera 202, as the Hanwha camera, model XNP-6321H, is an HD 1080p PTZ camera with the following specifications:

[0085] Imaging device: 1 / 2.8” 2.4M CMOS Resolution: 1,981(H)x1,288(V), 2.55M Focal length (zoom ratio): 4.44~142.6mm (32x optical zoom) Angle of view H / V: 61.8 degrees (wide) ~ 2.19 degrees (telephoto) / 36.2 degrees (wide) ~ 1.24 degrees (telephoto) Autofocus & Auto Iris IR lighting 150 decibel dynamic range Pan range / speed: 360 degrees / 700 degrees / second Tilt range / speed: 210 degrees / 700 degrees / second Digital zoom: 32x Application Programming Interface: ONVIF Profile S / G Video compression formats: H.265 / H.264, MJPEG Maximum frame rate H.265 / H.264: 60fps at all resolutions Audio input selectable (microphone input / line input) Ethernet: 10 / 100 BASE-T Operating temperature / humidity: -31°F to +131°F / less than 90%RH Intrusion protection: IP66 / Destruction resistance IK10 Input voltage: 24V AC or POE+ Power consumption: Maximum 24W (heater off), maximum 65W (heater on, 24V AC) Therefore, camera 202 can be implemented as various different types of cameras and can be deployed and used in conjunction with the various video processing systems and methods described herein.

[0086] Referring here to Figure 3A, a block diagram illustrating an AI-enabled video processing system is provided. The embedded AI video processing system, commonly shown as System 300, includes a processor 302 and memory 303. System 300 may include an NVIDIA JetsonTX2 system for processing and controlling a local video camera. The processor 302 may include a dual-core NVIDIA Denver 2 64-bit CPU and a quad-core ARM® Cortex®-A57MPCore, and the memory 303 may include 8GB of 128-bit LPDDR4 memory and 32GB of eMMC storage. System 300 may also include an AI-enabled graphics processor 316, which may include a 256-core NVIDIA Pascal® GPU architecture with 256 NVIDIA CUDA cores. The operating software for System 300 may include Li The system may include the nux operating system, Python as the application programming language, and the OpenCV image processing library. System 300 further includes an AI logic module 318 containing machine learning deployment and execution software such as Amazon Web Services GreenGrass ML software.

[0087] The system 300 further includes a remote camera interface 304 that communicates with the processor 302. The remote camera interface 304 may be connected to the network switch 110 shown in Figure 1, or to other interface / communication mechanisms that connect to the camera processor 302. The system 300 may further include a power module 306 that may be configured to supply power to the processor 302 and other components of the system 300. The power module 306 may be in the form of a battery or may be a hardwired connection to another power source, such as a power grid or an existing power supply. The remote camera interface 304 can be used to supply power to remote cameras connected to the remote camera interface 304. According to one embodiment, the remote camera interface 304 may be an Ethernet interface, and each camera (not shown) may be powered and controlled using a PoE connection. Other forms of connections may also be used, including but not limited to optical fiber, coaxial cable, twisted pair, single strand, or various combinations thereof.

[0088] The system 300 may further include a communication module 308 connected to the processor 302 and a modem, such as a cellular modem 310, configured to transmit data. The modem 310 may be modem 114 in Figure 1, or other forms of modem as needed. The modem 310 can communicate with a wired or wireless network that can connect to the Internet or cloud-based services. The communication module 308 can be used to determine a location or address for communication via the modem 310, and further, it can receive data or instructions from the processor 302 via the modem 310.

[0089] Furthermore, according to one embodiment, the system 300 may further include an AI-enabled digital video recorder 312 and a local video processing engine 314, each of which may be connected to a processor 302 and receive control signals from the processor 302. The video recorder 312 and processing engine 314 together can receive and store raw video, and then automatically process the raw video to detect specific objects and create specific types of video as described herein.

[0090] During use, system 300 can configure and control cameras using the remote camera interface 304 to capture and record video. The AI-enabled graphics processor 316 can perform object detection on the recorded video to identify predetermined activities. If the predetermined activity is active, system 300 can process the video into segments for the detected user. System 300 can edit the segments as needed and combine the segments for the detected user into a unique video file. The video file can then be uploaded to the internet or the cloud using the communication module 308 and cell modem 310. In this way, local video processing with AI capabilities can be deployed in a specific location to reduce the overall file size of the video file, generate user-specific content, and efficiently communicate the video file to the internet or the cloud for quick access.

[0091] In a further embodiment, the system 300 provides localized AI video processing near the geographical location of an installed remote camera to provide automated monitoring and processing of desired activities. This is possible. Therefore, automatic detection and video recording / processing can be performed by system 300, and the processed video can be sent to the end user. The processed video can be received and forwarded to the end user via an intermediate server or other communication device.

[0092] However, in another embodiment, system 300 can use remote AI video processing, as will be further described below. Even when processing video remotely, the video may be recorded locally by one or more remote cameras. The recorded video is then communicated by system 300 to a remote processing system (not explicitly shown) and can be used to automatically edit and incorporate additional graphics using a remote video processing system, such as the remote video processing system 400 described below.

[0093] Figure 3B is a flowchart of a method for local video processing according to one aspect of the present disclosure. This method may be used to perform the method described in Figure 3B by one or more of the following: a system, a device, a processor, a module, software, firmware, or various other forms of processing. Furthermore, Figure 3B may be implemented as in various parts of Figures 1 to 3A and Figures 4 to 8, and in some aspects may be modified to include various functions, uses, and features described therein.

[0094] This method generally begins in step 301 and can be used in various geographical locations where a given activity is performed. As an example, this method can be used for local processing and video capture on a golf course, as described below, but other activities can be described in relation to the method in Figure 3B. Once presence is detected, the method proceeds to step 303. For example, a golfer may be detected as they approach a tee box in connection with playing a golf hole. Detection can be carried out in a variety of ways, including but not limited to using the reception of signals from another transmitter, such as GPS or RFID, Wi-Fi, Bluetooth, location services in a mobile device, or other sensors for detecting presence, including motion detection, RFID detection, Bluetooth detection, Wi-Fi detection, radar detection, temperature or thermal sensing, or various other sensing technologies. In addition to detecting the presence of individual golfers, similar transmitters may be installed on golf carts, etc., to indicate the presence of one or more golfers. It will be understood that other detection mechanisms can also be used.

[0095] Upon detecting a presence, the method proceeds to step 305 to determine whether the user is valid. For example, the detected presence could be a deer on a golf course, or a jogger or pedestrian. Thus, various types of techniques can be used to detect a golfer in step 305. For example, in one form, a golfer location service on a mobile device with an application for recording video can be detected. For example, a geofence can be placed around a tee box, and when a valid golfer approaches the tee box, the geofence is triggered to verify the user. Other forms of verification can also be used, including facial recognition of the golfer and AI logic detected by a camera at that location. In another form, the AI ​​logic may include an object recognition neural network that can identify objects specific to the golfer. For example, the AI ​​logic can identify a person and a golf club on the tee box. Other forms of object recognition can be used to identify a golfer, as described herein.

[0096] If the user is not valid, the method proceeds to step 303 until another presence is detected. If a valid user is detected in step 305, the method proceeds to step 307 and begins recording the activity. For example, multiple cameras may be present at a golf course or other activity location and may be used to record the activity. In this way, once a valid user is detected, remote cameras associated with geographical location can begin recording the event. In one form, recording can also be initiated by an individual. For example, a golfer may have a mobile device with an app associated with a geographically located camera. Thus, the golfer can step onto the green and begin recording their golf activity. In this way, recording can be done automatically or by a user who initiates the recording.

[0097] Next, the method proceeds to identify a user in step 309. For example, in step 309, a golfer may have been detected, and in block 309, the user can be identified during recording. For example, this method can use image processing to identify the clothes the user is wearing, and in other forms, AI logic can be used to identify a specific user using facial recognition. Once the user is identified, the method proceeds to step 311, where the activity can be identified. For example, a golfer holding a golf club can be used to identify the activity within one or more frames of the video segment. In some forms, another individual holding a golf club, who is not subscribed to the service provided by the method in Figure 3B, may appear at the tee box. Therefore, if an invalid user is swinging a golf club, this method will not consider the activity to be valid and proceeds to step 303. In other forms, a maintenance worker may be present at the tee box and working there. This method identifies that activity and, in step 313, uses AI logic with valid activity to dismiss the activity as invalid. The method will then proceed to step 303 until another presence is detected. If valid activity is detected in step 313, the method proceeds to step 315 and continues recording the video.

[0098] When continuing recording, the method checks in step 317 to determine whether the user is still present at the geographical location. For example, the user may be a golfer and may hit the ball multiple times before completing a hole. Therefore, if the user leaves a designated area of ​​the geographical location, such as the green, the recording ends. If the user has not left or departed, the remote camera continues recording. If, in step 317, the user is no longer present or detected, the method proceeds to step 319, where the video of the user is processed.

[0099] In block 319, local processing of video may include various AI logic processing, image processing, formatting, and compression techniques, as described herein. In one embodiment, video can be segmented into portions containing only identified users. Segmentation may occur using AI logic or image processing to verify users within the segments. Once segments are created, additional information, such as ball traces or predetermined graphics, may be added to the video segments. The video segments can then be merged and formatted into a format usable by the end user. In another embodiment, the final video may be compressed before being communicated from the local video processor. In other forms, various parts of processing may be added or removed depending on the requirements of how the local processing is performed.

[0100] Once the video is processed, the method proceeds to step 321 to detect whether another user is present. For example, the video might show a snowboarder going down a trail with several friends. The method then detects another valid user in the video and extracts the video segment in which the second snowboarder is present. Once segments for the additional user have been extracted, the method can proceed to step 323 to process the video for the second user. For example, a video processed for multiple snowboarders may include traces or colored lines showing details of where the second snowboarder descended relative to the first snowboarder. In this way, multiple users can be detected using the same video, and video segments unique to each user can be created. It is possible. Although shown only as a second user, it should be understood that the video can be processed and multiple additional users can be detected as needed or desired. After processing the second user video, the method proceeds to step 325, transmits the formatted video, and proceeds to step 327, where the method terminates.

[0101] Referring here to Figure 4A, a block diagram is provided showing an AI-enabled video processing system for remote use according to one aspect of the present disclosure. The AI-enabled video processing system, commonly referred to as a remote video processing system and management system or remote processing system 400, includes a network processor 402 connected to cloud storage and services 404, the cloud storage and services 404 being connected to a remote video interface 406 that can communicate video from a remote camera (not explicitly shown). The network processor 402 can access various modules for managing and processing video received from the remote video interface 406. For example, the network processor can access a remote video manager 416, a content manager 418, a profile manager 420, a format manager 422, and an output manager 424. Each of the listed managers may be provided as a software module or programmable interface that can be accessed by the network processor 402 as needed.

[0102] The network processor 402 can also be implemented as a cloud service that can be deployed using Amazon Cloud Services, IBM Cloud Services, Microsoft Cloud Services, or various combinations thereof. The cloud storage and services 404 and the delivery manager / communication 408 can also include various types of cloud storage and delivery services with different storage capabilities and accessibility. For example, some content may be stored for immediate access, while other forms of content can be stored for delayed access using deep storage technology. This allows for flexible access to content such as video while reducing overall costs per user. For example, if a user chooses to pay for long-term storage, the image processing system can change the type of storage on a rate basis. Thus, the cloud storage and services 404 can include various different types of online services, and according to one embodiment, it can include Amazon Web Services (AWS) Glacier for storing video in the cloud. Furthermore, the content manager 418 and the delivery manager / communication 408 can utilize AWS Cloudfront as a content delivery service for delivering video to end users.

[0103] The remote system 400 may also include an AI-enabled graphics processing engine or GPU 410. The GPU 410 may include various types of AI-enabled processors, one form of which may include one or more NVIDIA V100 Tensor Cores capable of AI processing for generating, developing, and training machine learning (ML) AI logic 412. Including a GPU, the AI ​​logic 412 can be created, modified, distributed, and used by the system 400 or other AI-enabled processors described herein. In one embodiment, the GPU 410 and / or network processor can also create the AI ​​logic 412 using additional software and services. For example, the GPU 410 can use AWS SageMaker to build, train, tune, and evaluate ML models. SageMaker supports many ML development frameworks, and in one embodiment, Keras / TensorFlow may be used. Furthermore, the system 300 can use SageMaker NEO to prepare the AI ​​logic 412 model for deployment to a remote processor, as shown in Figures 1-3 and 6.

[0104] In one embodiment, the GPU 410 can access graphic assets 414 that can be added to video being processed using the network processor 402. The GPU 410 can also access AI logic 412, which may include various stored AI-enabled logics designed to automate various aspects of autonomous video processing in the remote processing system 400 and local processing system 300, camera 200, or various other processing systems and devices provided herein. For example, AI logic 412 can be created using various videos created during a particular activity, such as golf, football, soccer, baseball, basketball, skiing, snowboarding, cycling, fishing, boating, general sports activities, or various other types of non-sports activities predetermined to occur at a geographical location. AI logic 412 can process previously recorded image data within video frames, which can be used to tag objects in the video that are important to or related to the activity. For example, AI logic 412 can be used to tag a soccer ball being used on a soccer field, but it cannot be used to tag a bird flying over the soccer field. Furthermore, soccer player numbers and names can be processed and tagged in a way that helps identify videos in which a particular player may be present and processed accordingly. AI logic 412 created for a specific activity can be shared with a local video processing system or camera, as described herein. Alternatively, AI logic 412 can be stored locally in a remote video processing system 400 for use or distribution as needed.

[0105] In a further embodiment, system 400 can be used to post processed video received from remote video interface 406. For example, the video may be modified or edited to add additional assets 414, or formatted using a specific format provided by format manager 422. Therefore, system 400 can employ additional software for post-processing and editing, including the use of Python and OpenCV to edit the video on an AWS EC2 web server. System 400 can also utilize AWS Elemental MediaConvert to convert or format the video before distributing it using distribution manager / communication 408.

[0106] Referring here to Figure 4B, a flowchart of a method for processing video using AI-enabled remote video processing according to one aspect of the present disclosure is shown. This method may be used by one or more systems, devices, processors, modules, software, firmware, or various other forms of processing to perform the method described in Figure 4B. Furthermore, Figure 4B may be implemented as in various parts of Figures 1 to 3B and Figures 5 to 8, and in some aspects may be modified to include various functions, uses, and features described therein.

[0107] This method generally begins in step 401. In step 403, once the video is received from a remote video source, the method proceeds to step 405 to identify activities in the video. The various activities described herein can be stored in various AI logics created using machine learning as a neural network. If a portion of the video can be compared to the AI ​​logic and no activities are detected, the method proceeds to block 407 to process the video and identify new activities. In some forms, the processing can include tagging or identifying objects in the video that are specific to the activities and for which machine learning can be used for one or more activities. After processing the video, the method proceeds to block 409 to determine whether it is necessary to create new activities in the neural network. For example, as described herein While various activities as described can be identified, in some forms, sub-activities can also be created within an activity category. Examples of such activities may include, in a form of golf activity, a golfer slicing or hooking the ball, a golfer swinging a club, a golfer high-fiving another golfer, a golfer getting a hole-in-one, or various other activities or sub-activities that may be created. If it is necessary to create an activity, the method proceeds to step 411 to identify an object or set of objects that can be used and present within the image frame of the video. The method then proceeds to step 423 to label the identified object, and then to block 425 to add the object or frame to the AI ​​logic for that activity. In some forms, if an activity exists, the object can be added to the neural network of the activity; in other forms, if no activity exists and no neural network is available, the method can generate a new neural network and machine learning instance to be used within the AI ​​logic. The method then proceeds to step 417 to process the AI ​​logic and to step 429 to determine whether the activity is valid and can be released within the AI ​​logic. For example, the accuracy of a neural network can include a dependency on the number of objects identified and provided to the machine learning instance for that activity. If there is only one instance, the AI ​​logic may fail. If additional objects are identified and used within the machine learning instance, the probability that the AI ​​logic will identify the activity increases statistically. If additional objects are needed for that activity, the method proceeds to step 401 until additional video is received. If the activity is enabled in step 419, the machine learning instance enables the AI ​​logic for that activity in step 421 and proceeds to step 423, where the AI ​​logic can be distributed to various locations as needed. The method then proceeds to step 425 and terminates.

[0108] If an activity is identified in step 405, the method proceeds to step 427 to determine whether the video is valid for output or storage. For example, a local video processor may have processed enough video to deliver. A remote video processor, such as system 400, can then use the data provided with the video to detect whether the video requires further processing. If the video is valid for output, the method proceeds to step 429 to format the video using the format manager. For example, the video may need to be formatted for output to a mobile device or application that has specific formats, file sizes, and other specifications required in relation to posting the video. Videos delivered to various locations and applications include Facebook, YouTube®, Instagram, Snapchat, and other applications. Each application being used may require its own format for publication to a specific network. Therefore, the format manager can determine one or more locations for the video and format it accordingly. Other formats allow the video to be processed and delivered to network locations with high-resolution or 4K video output on fixed output devices such as specific monitors. Various types of formats can be used to output the video to various destinations. Once the video is formatted, this method proceeds to step 431, where the distribution manager is used to distribute the formatted video. For example, a video could be a single instance distributed to a cloud storage account configured to store the video. However, in other formats, a video may be formatted into multiple formats, resulting in multiple videos that may need to be distributed. Therefore, in step 431, the videos are distributed to their respective destinations. This method then proceeds to step 425, and is completed.

[0109] In step 427, if the video is not valid for output, the method proceeds to video processing. For example, this method can use three different types of processing to process the video. This includes and is provided only as a reference to describe the processing of the video, not in any particular order. In block 433, the method determines whether it needs to perform one or more user processing. For example, a local video processor may have provided information about a particular user recorded in the video. This information can then be used to identify users in the video. Various types of identification can be used, such as facial recognition, geofencing, GPS or location services location identification, grid identification, manual input from a user's mobile app, or various other triggers that can be used to identify a particular user in the video. The method may also use AI logic to identify a specific user and provide that user's characteristics, details, and / or objects along with the video. Once a user is identified, the method proceeds to step 437 to extract video segments relevant to that user. For example, the user to be identified may be a football player with a specific jersey number and name. The method identifies all video segments in which the football player is and extracts those segments from other players. In another form, a golfer may be playing holes on a golf course with other players, and the video may include a number of other shots and activities made by the other golfers. Therefore, this method allows for the identification of specific users and activities within various segments of the video and the exclusion of segments that do not contain those specific users. In this way, it is possible to create a video containing only a specific golfer. Once the video segments have been extracted, the method proceeds to step 439 to determine if the end of the video has been reached. If not, the method proceeds to step 437 and repeats. If the video has ended, the method proceeds to step 441 to determine whether the video should be processed for a new user. For example, as mentioned above, multiple golfers or players may be part of the same captured video. Therefore, if necessary, a new user can be identified in block 435 and the method can proceed as described above.In this way, multiple segments unique to a specific user can be extracted from a single video, reducing the number of video uploads required for processing. For example, in a football field, a single video can be uploaded, and this method can extract video footage of each player, creating unique video segments for each player that can be provided to each player, their teammates, coaches, etc. While multiple users may be detected in block 441, this method may not require extracting video segments for all users, and profiles from profiles and content managers can be included to extract segments for specific users only.

[0110] If, in step 441, the method determines that no additional user segments should be extracted, the method can proceed to step 443. In step 443, the method determines whether the segments require further processing. For example, if only a single segment of video is extracted, no additional processing may be required to combine the segments. If, in step 443, the video segments require further processing, the method proceeds to step 445 to combine each user's segments into a single video. For example, segments can be extracted and saved as part of a video or video segment. In step 445, the segments can be combined to create a single composite video for one user. Once the segments are combined, the method proceeds to step 447 to combine the video segments of any remaining users to create a video unique to each user. Thus, each individual participant can have their own video using segments created about their own experience.

[0111] After processing the video as needed, this method proceeds to step 449 to determine if any effects need to be added to the video. For example, a content manager such as content manager 418 in Figure 4 or another autonomous content manager might have a video of a golfer playing a specific golf hole at a resort such as Omniburton Creek. It can be identified. The content manager may have an introductory video of a drone flyover of a golf hole being played, and this introductory video can be added to the user's video segment. In other forms, an animated graphic showing the distance to the hole can be drawn from the tee box to the green in a "top-down" view of the hole. Other effects may include adding audio or additional captured video of the user and other players in the activity. In one form, a portion of the video segment can be identified or tagged, and a tracer can be added to the ball's movement as part of creating the effect. In another example, AI logic can be used to detect when the ball is positioned around the green in a place the golfer does not want. In that case, an augmentation effect can be added to the video when the ball goes into a wood, sand trap, water hazard, etc. The augmentation effect can include an animated video overlay. For example, an animation of the Loch Ness Monster stealing the golf ball can be added to the video segment when the golf ball goes into a water hazard. Other animations can also be used and added as needed or as required. In this way, augmented reality can be added to the user's video. In a further embodiment, the video can have a ball tracing effect added to the shot made by the golfer. For example, this method can be used to identify a golf ball within a video frame and add a colored trace line to each frame to show the ball's path. If the video includes a segment of the ball entering the green, a trace can be added to the video when the ball lands on the green. In some cases, AI logic or image processing can be used to pinpoint the ball's position within the frame, and in some cases, the video can be reversed after the ball has landed on the green. For example, as a user approaches a golf ball on the green, AI logic or image processing can identify the user and add effects or other content before the user picks up or addresses the ball.In this way, by reversing the video data, the ball can be traced back to a previous frame or segment, and the video can be modified accordingly for that particular user. In another form, the effects can include audio effects, music, or sounds added to the video. For example, music can be added to all or part of the video and can include various audio levels. Unique sounds can also be added to the video based on what is happening in the video. For example, if a user hits the ball into the woods, a "chainsaw" sound, clapping, laughter, applause, or other sound effects can be added to the video segment. In another form, AI logic or image processing can be used to identify when the golf ball goes into the cup and add a "ball goes into cup" sound effect. The effects can be predetermined based on the activity or sub-activity identified by the AI ​​logic. In this way, this method can access labels within the video segment and automatically add the desired effect to part or segment of the video.

[0112] After adding effects as needed, this method proceeds to step 453 to determine whether graphics need to be added to the video. If graphics do not need to be added, this method proceeds to step 429 and terminates. If additional graphics are to be added, this method proceeds to step 455 to retrieve the content or graphics to be added from an asset resource such as asset 414, using the content manager 418 in Figure 4, or using other assets or content resources as needed or desired. An asset or graphic may include one or more graphics to be added to a video image or video segment. For example, a graphic could include the golfer's name, date, golf course, hole number, distance to the hole, club used by the golfer, current weather conditions, maximum altitude of the ball or maximum altitude after the ball is struck, speed of the ball after it is struck, curvature of the ball in flight, maximum distance traveled by the ball, current stroke or number of strokes taken, par of the hole, other players currently playing The layer information may include other player information or course information, as needed or desired. In another embodiment, the golf course may include graphic assets to be added to the video segment, such as the golf course name, golf course logo, year or establishment date, current professional name, owner name, or various other types of marketing assets or graphics that the golf course may wish to add to the video segment. Although described as adding assets for the golf industry, other graphic assets may be added to the video as needed or desired. Once the graphic assets are acquired, the method proceeds to step 457, where the segment is modified to add the asset or graphic to the specific video image or segment. The method then proceeds to step 429, where the method terminates.

[0113] The method in Figure 4B can be modified as needed, and various parts can be combined or removed as required. For example, after identifying an activity or sub-activity in step 405, this method can be used to segment the video, and the video segments can be further processed to identify sub-activities. Segments can be labeled as having their sub-activities, and these labels can be used for further processing of the segment, adding effects, adding graphics, or various other types of processing of the video segment. In this way, automated processes using AI logic allow for efficient editing and processing of videos without the need for individuals to manually modify and edit the video.

[0114] Therefore, the system 100 can ultimately capture, process, and save the video of the activity for later provision to the user, such as through the user application 500.

[0115] Referring to Figure 5, a schematic diagram of the user app 500 and / or user phone 501 is shown, illustrating the various screens and subscreens presented by the app 500 for user visualization. The app may include several soft buttons 514, 516, 518, 520, and 522, corresponding to user video, user location, user friends, user coaching, and others, respectively. By selecting button 514 ("V" for video), a list of videos categorized by event type can be displayed. As shown in Figure 5, categories may include golf course 502, skiing 504, football practice 506, fishing 508, and soccer 510.

[0116] By selecting button 516, multiple location categories can be displayed. As shown in the example in Figure 5, the locations may include, respectively, a first location 524, a second location 526, a third location 528, a fourth location 530, and a fifth location 532. The illustrated locations include, for example, a golf course, a ski resort, a beach location, and a sports field.

[0117] By selecting button 518, a list of the user's friends on the app may be displayed, which includes the first friend category 534, the second friend category 536, the third friend category 538, the fourth friend category 540, and the fifth friend category 542. By selecting button 520, coaching comments may be listed according to categories including the first category 544, the second category 546, the third category 548, and the fourth category 550.

[0118] It will be understood that additional buttons and corresponding sub-screens can be used for other groups. Within each category, the app may display the number of videos in the category. The number may represent the total number of videos, the total number of unwatched videos, or other measures. In addition to organizing and displaying videos for the user, app 500 also provides software for phone 501. The system 100 can communicate directly or indirectly with other aspects of the system via wear / hardware.

[0119] Referring here to Figure 6, a block diagram is provided showing an example of an AI-enabled video recording system deployed on a golf course according to one aspect of the present disclosure. The AI-enabled video recording system, commonly indicated as System 600, is used to detect, record, and process golf activity on a golf hole having a tee box 602 and a green 604. System 600 includes cameras 606, 608, and 610 which may be positioned adjacent to the tee box 602, with camera 606 positioned behind the tee box 602 and cameras 608 and 610 positioned on the opposite side of the tee box 602. Cameras 614, 616, and 618 may be positioned adjacent to the green 604, with camera 616 positioned behind the green 604 (and facing the tee box 602), and cameras 614 and 618 positioned on the opposite side of the green 604. Each camera communicates with a camera interface 624, which may include a network switch 110 in Figure 1, a remote camera interface 304 in Figure 3, or other interfaces that can connect remote cameras to a processor 611. Interface 624 is connected to or integrated with the processor 611 and the AI ​​video processing engine 622. The processing engine 622 may be the processing system 112 or system 300 described above, and may include the modem 310 or modem 114.

[0120] The processing engine 622 may be connected to a golf course irrigation power interface 620 that can supply power, although other forms of power may be supplied to the power processor 611 and the processing engine 622. The processing engine 622 may communicate with a remote golf course video processing management system 628 (which may be system 400). The video processing management system 628 may communicate with a mobile app 630, which may be the mobile app 500 described above. The mobile app 630 may be installed on a mobile device 631. The mobile device 631 may be a mobile phone, tablet, smartwatch, golf cart, pull cart, push cart, powered "follow me" cart, or any other mobile device. It will be understood that the mobile app 630 may also be installed / embodied / accessible on other devices such as conventional computers, internet browsers, etc. The mobile app 630 may also include other features and functions as described below. It will be understood that the various systems described above may be integrated whole or in part into system 600 to enable local and / or remote processing of video captured by the camera. Such processing can be achieved automatically based on data received by System 600 and determined using video or image processing and / or artificial intelligence. Furthermore, various embodiments and uses of System 600 can be realized as methods and software available by System 600 or various components within System 600. Thus, the description in Figure 6 or its elements can be expanded into methods.

[0121] Various cameras have been described above with reference to different diagrams and embodiments of cameras. For explanatory purposes, each of the above cameras may generally be referred to as one or more cameras 601, which are generally shown in Figure 6. It will be understood that references to cameras 601 may also refer to cameras 102-108, camera 202, cameras 606-618, or other camera references in this description.

[0122] During initial setup, the camera 601 can be used to record or perform a 3D scan of the hole / golf course, and as a result, different aspects of the course can be determined through image processing by the processor 611. For example, the processor 611 can determine the location and shape of water hazards or sand traps / bunkers, as well as the location of trees and different grass cuttings. It can be configured to detect structures and other objects. The results of the 3D scan can be stored in the processor 611 for a specific hole and used as a reference for processing after the ball's flight.

[0123] As part of the initial setup, the height of camera 601 can be determined and input to processor 611. This information may not be readily available from the GPS or location information of camera 601. The height of camera 601 can be entered manually or detected using other sensors that utilize other measurement methods such as lasers. The distance between cameras 601 can also be measured by either GPS coordinates or other measurement methods.

[0124] Furthermore, using the determined positions for each of the cameras 601 and the 3D scan of the hole, the setup may include establishing a geofence 636 or other predetermined boundary assigned to the hole. The geofence 636 can take the form of a boundary box or a complex curvature surrounding the hole and can be created by referencing the established GPS coordinates of the cameras 601. The geofence 636 can be used to detect when a golfer enters a hole by detecting whether the golfer's position is inside or outside the boundary of the geofence 636.

[0125] Golfer detection can be based on the detected or transmitted golfer's location, via detection by camera 601, or via other detection methods such as sensors combined with image processing software. In another embodiment, golfer detection can be based on the reception of signals from GPS or location services or another transmitter such as RFID, Wi-Fi, or Bluetooth, which can be transmitted via mobile device 631 or other transmitting devices. In addition to detecting the presence of individual golfers, similar transmitters may be provided on golf carts or the like to indicate the presence of one or more golfers. As described above, mobile device 631 may be a telephone associated with the golfer or another device such as a golf cart. It will be understood that other detection mechanisms may also be used.

[0126] In addition to 3D scanning of the holes, the initial setup may include identifying the precise locations of various objects on the course through other marking methods. In one embodiment, the installer can move to the location of a particular object and mark that object at a specific GPS or location service location, thereby providing an additional reference point for that object. This can be repeated to mark various objects around the course. For example, Figure 6 shows a hazard adjacent to Green 604.

[0127] Therefore, system 600 can receive positional information corresponding to camera 601 and surrounding objects. In response to receiving this positional information, system 600 can define a geofence 636. According to the definition of the geofence 636, system 600 can automatically detect and / or determine when the golfer is within the geofence 636 and the golfer's position relative to camera 601.

[0128] System 600 can further define the position grid 650. The position grid 650, partially shown in Figure 6, may be limited to the area within the geofence 636 or may extend beyond the geofence 636. Preferably, the geofence 636 is defined as a space large enough to encompass a substantial portion of the area where golf balls and golfers are likely to be while playing a hole / course. Of course, the flight of a golf ball is unpredictable, especially for recreational golfers. It will be understood that a golf ball or a golfer who has hit the ball may eventually move outside of geofence 636 while playing a hole / course.

[0129] The grid 650 can be defined by multiple grid boxes, such as 3' x 3' boxes, that are repeated across the entire hole or substantially across the entire hole. Each grid box has a fixed position relative to the camera 601, and the grid boxes can be used to provide the processor 611 with information about the specific position of the ball or golfer while the hole is being played. The position of the ball or golfer relative to a specific grid box can be used during image processing by the processor 611 to provide the golfer with a specially adjusted video.

[0130] Therefore, in response to receiving location information from camera 601 and location information from environmental objects, system 600 automatically defines a location grid 650. According to the definition of the location grid 650, system 600 can automatically detect the golfer's position within the location grid 650.

[0131] System 600 may include one or more mobile devices 631, each mobile device may include applications and associated memory / processors, and may therefore also be called a mobile computing device. For explanatory purposes, the mobile computing device 631 will be referred to as mobile device 631. Mobile device 631 has been described above as providing location and detection capabilities to a golfer. However, mobile device 631 may also provide other communication and control functions. Mobile device 631 is configured to communicate with processor 611 to provide processor 611 with various information about the golfer, enabling processor 611 to properly monitor and record the golfer and golf shots. Mobile device 631 may include GPS or location services functionality, thereby indicating the location of mobile device 631 and the golfer who owns mobile device 631. Mobile device 631 may also communicate with cloud or remote-based systems. It will be understood that any device with GPS or location services location functionality, such as a GPS or location services watch, including those with yardage functionality, may be used for the purposes consistent herein. The various functions of the mobile device 631 described herein may also be provided by multiple mobile devices 631. For example, one mobile device 631 may be used for location, while another mobile device 631 may be used to communicate with a cloud / remote system to provide or receive other information.

[0132] In one embodiment, in the case of a group of golfers, each golfer may have their own mobile device 631 that communicates specifically with the processor 611. Communication between the mobile device 631 and the processor 611 may be direct or via another communication relay. Using the mobile devices 631 that communicate with the processor 611, the processor 611 can determine the specific location of each mobile device 631 and each golfer, thereby determining when one or more golfers have entered a predetermined geofence 636 where monitoring and recording should begin.

[0133] For example, when a group of golfers and their mobile devices 631 enter a geofence 636, their mobile devices 631, which are detecting their positions, can determine that the coordinates of the mobile devices 631 are within a given geofence 636. The coordinates of the geofence 636 can be communicated to and stored in the mobile devices 631 so that the mobile devices 631 can determine that they are within a given geofence 636. Thus, the mobile devices 631 can then communicate to the processor 611 that they are within the geofence 636. Yes, it is possible. In this embodiment, the processor 611 does not actively monitor the presence of the golfer. Rather, the processor 611 receives signals from the mobile device 631.

[0134] In another embodiment, the processor 611 can actively monitor the presence of a golfer or a mobile device 631. For example, the mobile device 631 or other device may send a "ping" at predetermined intervals. The processor 611 can "listen" to the pings, and when the golfer and the mobile device 631 enter a predetermined range of the processor 611, the processor 611 can determine that the golfer and the mobile device 631 have arrived at the hole / course and begin monitoring and recording.

[0135] System 600 is configured to recognize each specific golfer participating and to identify when each golfer is participating. Typically, golfers take turns hitting shots. While camera 601 records the shots in progress, processor 611 is configured to determine which shot belongs to which golfer so that specific shots can be associated with the correct golfer. Therefore, processor 611 is configured to identify the golfer before each shot.

[0136] In one embodiment, a golfer can indicate via an associated mobile device 631 that they are the person about to hit their shot. The golfer can indicate that it is their next shot via a button displayed on the mobile device 631. Alternatively, another golfer in the group can indicate via their mobile device 631 that a particular golfer in the group is about to hit their shot. The processor 611 can then associate the resulting shot with the indicated golfer. This type of golfer identification can be described as manual golfer identification.

[0137] In another embodiment, the identification of a golfer immediately before hitting a shot can be performed automatically by processor 611 and associated processors and software. In one embodiment, facial recognition software can be used. In this approach, before hitting a shot, the golfer stands in front of a camera 601, which captures an image of the golfer and determines, through the captured image, which golfer in the group of golfers matches the recognized face. Golfers can record their faces before the round so that processor 611 can access a database of faces of golfers expected to participate.

[0138] In another embodiment, golfers can be identified by the clothing they are wearing. Typically, each golfer's clothing is unique within the group. For example, trousers, shirts, hats, shoes, etc., can be recorded by each golfer and then detected by camera 601 before the golfer hits a shot.

[0139] In another embodiment, the processor 611 can use the location data of the mobile device 631 to determine which golfer is about to hit the ball. For example, if one golfer is standing on the tee box and addressing the ball, and another golfer is standing outside the tee box or has not addressed the ball, the processor 611 can determine the specific golfer about to hit the shot based on the location of the mobile device 631.

[0140] In another embodiment, a golfer may carry a remote identifier 633 with them, such as in a pocket, clipped to a belt, or attached to a hat. The remote identifier may be in the form of a GPS transmitter or an RFID tag. In the case of a GPS transmitter, the remote identifier 6 33 can actively transmit golfer location data to processor 611, which receives the transmission and detects the golfer's location. In the case of RFID tags, the remote identifier 633 can be detected by processor 611, which can transmit a radio frequency to identify the golfer's location relative to processor 611 and determine the location of each golfer.

[0141] In another embodiment, the system 600 can store the ending position of the ball for each shot and splice subsequent shots played from the stored position together with the previous shot. Thus, even if a particular golfer cannot be identified, the system 600 can still determine that a shot belongs to that golfer based on the starting position of the shot relative to where the previous shot ended. In one embodiment, such a determination can be made based on the position in the video frame or the position in the grid 650.

[0142] Therefore, taking the above into consideration, the system 600 is configured to identify individual golfers before they hit their first shot from the tee box, and similarly for subsequent shots. Cameras 601 installed in the hole record each shot and store each golfer's shot, along with each golfer's unique identifier, in a recording database based on the identification of each golfer, so that each golfer's shot can later be provided to the correct golfer.

[0143] As is typical, each shot from a golfer will be unique. It will be understood that many factors influence the outcome of a shot, including the golfer's swing, positioning, wind speed, and wind direction. Therefore, the resulting position of each golfer's shot can be at various points on the hole, usually closer to the green than the tee box. Consequently, recording each golfer's subsequent shots can include recordings from multiple cameras.

[0144] Camera 601 may be configured to include a zoom function, which may include either optical zoom or digital zoom, or both. Camera 601 may be further configured to have tilt and pan functions, which may allow it to be pointed at an identified target. Each camera 601 may be pointed at and zoomed to a golfer attempting a shot, including the first shot and subsequent shots up to the final shot, which may include the final shot of the hole.

[0145] In another embodiment, one or more cameras 601 may have a fixed viewpoint without tilt, pan, or optical zoom. In this embodiment, camera 601 may be configured to capture everything within its field of view. The video may be provided or analyzed as a whole, or segments / windows of the view may be separated or cropped to isolate a particular golfer or the shot being played. Thus, the same video image can be used for multiple golfers who are simultaneously within the field of view of camera 601.

[0146] After the first tee shot, System 600 is configured to determine and identify which golfer will hit the next shot. Typical golf etiquette and rules stipulate that golfers hit their shots in such a way that it is determined by which golfer's ball is furthest from the pin. Recreational and professional golfers usually follow this rule, but exceptions are common, especially in recreational settings. Many golf courses encourage players to play "ready golf," where the first golfer ready to hit the next shot, even if their ball is closer to the hole than other golfers'. This practice usually results in a more efficient completion of the hole and a faster pace of play, allowing golfers to finish the hole faster and avoiding the need to play behind them. This allows racing golfers to have more opportunities to play holes sooner.

[0147] Therefore, the system 600 is configured to determine which golfer will take the next shot so that the camera 601 can be pointed at and focused on the correct golfer and record the next shot.

[0148] For each shot taken by each golfer, camera 601 records the shot and, based on the recorded video, determines the position of each ball within the position grid 650. System 600 identifies the golfer for each shot, thereby correlating the ball's position with the golfer who hit it. Thus, system 600 can determine where the next shot will occur for each golfer. Similarly, system 600 can determine which golfer hit each ball on the position grid 650. Therefore, system 600 determines both the ball's position and the golfer's identification.

[0149] System 600 may be configured to control which golfer takes the next shot, or to identify which golfer is about to take the next shot. In one embodiment, processor 611 may communicate with the golfer to notify them that it is their turn to take the next shot. In one embodiment, an alert or signal may be sent to the golfer's mobile device 631. The alert may be in the form of an audible alert, a visual alert (such as a graphic representation on the mobile device's screen), a haptic alert (such as by activating the vibration function of the mobile device 631), or a message (such as an SMS text message). In this approach, the golfer may know that processor 611 will indicate which golfer is scheduled to take their shot. Processor 611 may simultaneously send alerts to each golfer indicating the order of play, so that the golfer is notified about the next golfer to hit after the golfer currently hitting has finished.

[0150] As described above, the processor 611 is configured to monitor and detect the position of each golfer, and thus control which golfer is about to hit the ball, allowing the camera 601 to be pointed at that golfer and record the shot. The camera 601 can also zoom in on the golfer who is about to hit the next shot.

[0151] In another embodiment, the processor 611 can determine which golfer is about to take the next shot based on the golfer's movement relative to the ball. For example, if one group of golfers is within a predetermined distance and the remaining golfers are further away, the processor 611 can determine that the golfer closest to the ball is the one about to take the shot. In response to this determination, the processor 611 can instruct the camera to be directed towards this golfer, and the camera 601 can zoom in on the golfer.

[0152] The relative distance between a golfer and the position of their respective golf ball can be determined using a grid 650. For example, if a golfer is located within the same grid square or an adjacent grid square as a previously determined ball position, the processor 611 can determine that this golfer is the one about to hit the ball. The processor 611 may also compare the relative distance between the golfers and the positions of their respective balls and determine that the golfer closest to the ball is the one about to hit the ball. To assist the processor 611 in making this determination, golfers may be instructed to maintain a predetermined distance from the ball when they are not about to hit it.

[0153] Therefore, system 600 may be configured to signal to the golfers which golfer should hit next, and / or system 600 may be configured to determine which golfer has decided to hit next based on the golfers' positions relative to each ball position. In both cases, system 600 may be configured to focus camera 601 on the correct golfer so that the golfer and the next shot are properly recorded and saved.

[0154] This process can be repeated for each consecutive shot played on the hole by different golfers on the hole. In some cases, the same golfer may hit multiple shots before another golfer takes their next shot. This process can be repeated until the hole is completed.

[0155] During play on a hole, camera 601 may be configured to record continuously, and processor 611 may be configured to tag specific times in the recording to correspond to different golfers and shots being hit, so that the recording can be divided and spliced ​​together according to the identification of each golfer and each shot hit. Alternatively, the recording may start and stop for each shot hit, and the individual recordings may be tagged and later spliced ​​together for each individual golfer.

[0156] The system 600 may include local video storage (not explicitly shown in Figure 6) that communicates with the processor 611, such as the AI-enabled digital video recorder 312 or memory 303 shown in Figure 3. Alternatively, remote video storage such as cloud storage and service 404 shown in Figure 4 may be used. The processor 611 can communicate with the video storage via Wi-Fi, cellular data, wireless communication, etc. The processor 611 can also communicate with remote servers or other communication devices that communicate with the video storage via communication cables.

[0157] The processor 611 may also include, or communicate with, image processing systems / modules 112, 300, 118, and 400, which communicate with video storage of recorded video and stitch together various recordings of each shot assigned to each golfer. Referring to Figure 6, the processor 611 communicates with a local AI video processing system / engine 622 and a remote processing system 628. The video processing system / engine 622 may include its own database for storing and formatting video recordings. The image processing systems / modules 622, 628, 112, 300, 118, and 400 may be included in the processor 611 or may be separate modules, as shown in various figures. The image processing systems / modules 622, 628, 112, 300, 118, and 400 may begin processing images immediately after the completion of each shot and add the assembled recordings for each additional shot or after the video recording has finished.

[0158] The system 600 may further be configured to make decisions based on the golfer's location data (via the mobile device 631 or other localization mechanism) and the boundaries of the geofence 636 when the golfer leaves the hole. In response to the determination that the golfer has left the hole, the processor 611 may provide the golfer with one or more recordings that have been spliced ​​or segmented, assembled or combined, processed, formatted, and communicated. In one embodiment, each golfer may receive a recording of a specific shot on the mobile device 631 or other device. In another embodiment, each golfer may receive all the recordings in a group and choose which recordings to view.

[0159] In a preferred embodiment, the recording is provided to the golfer after the completion of the hole and after the golfer has left the hole, prompting the golfer to leave the hole so that subsequent golfers can play the hole. However, in an alternative approach, the recording or a portion of the recording may be provided to the golfer immediately after the completion of each shot. In another embodiment, the recording may be provided to the golfer after the golfer has finished the round and entered another part of the golf course, such as the pro shop, restaurant, bar, clubhouse, locker room, or parking lot.

[0160] In one embodiment, the system 600 may be configured to automatically upload the golfer's compiled recordings to the internet, in addition to providing the recordings to individual golfers. Alternatively, the recordings may be uploaded to the internet instead of being provided directly to the golfer.

[0161] In one embodiment, the recordings may be uploaded to a specific account associated with the golfer, corresponding to each golfer's unique recording. For example, the recordings may be automatically uploaded to one of the golfer's social media accounts. Each golfer may have a user account associated with system 600. For example, via an app 630 installed on the golfer's mobile device 631, the golfer may input various identifying data such as the golfer's name, address, email address, payment information, photos, and other identifying characteristics of the golfer. The golfer may also provide social media accounts and permission for the app installed on the mobile device 631 to post information to the linked social media accounts. In one embodiment, instead of inputting this information into an app installed on the mobile device 631, the golfer may input their history information and social media accounts into a database associated with processor 611.

[0162] In one embodiment, golfers can choose whether or not to upload the recording to their social media accounts. Golfers can choose whether the recording is automatically uploaded before or after the recording. Golfers can also choose to manually control whether the recording is automatically uploaded.

[0163] By including multiple cameras 601, in this case cameras 601 positioned near both the green and the tee box, it becomes possible to record each shot from multiple angles. Therefore, image processing software can stitch together the multiple angles of each shot. System 600 can determine whether only one angle should be displayed, depending on the distance from the cameras 601 and the camera 601's ability to zoom in on a particular golfer. In some cases, the golfer may be behind a structure or other obstruction, resulting in one angle being preferable to another. In other cases, the golfer may be too far from one of the cameras 601 for the desired recording. For example, when the golfer is on or near the putting green, the camera 601 near the tee box may not provide the desired angle. However, when the golfer is hitting from the tee box, although the golfer may be far away, the ball's flight may cause it to land near the camera 601 on the green, and therefore angles from both the tee box and the green can be used. In another scenario, the golfer might be positioned roughly halfway between the tee and the green, and therefore angles from both cameras 601 might be desirable.

[0164] The above embodiment provides the ability to perform “unattended” or autonomous video recording of golfers, similar to video recording of golfers competing on television.

[0165] System 600 can also be configured to add graphic elements to the recording of golf shots for entertainment and evaluation purposes.

[0166] In one embodiment, system 600 may be configured to analyze images captured by camera 601 and processed by video processing systems / modules / engines 622, 628 (or 112, 118, 300, 400) to provide additional image enhancements to the recorded video. For example, system 600 may include “tracer” software that provides a visual representation of the ball’s flight. For example, in many television broadcasts of professional golf events, when a golfer hits the ball, a colored line tracks the ball, leaving a colored path of the ball’s flight in the broadcast image. The curvature of the path is displayed in the broadcast image, showing how the ball traveled, hooked, sliced, faded, etc. The tracer software can determine the ball’s speed, the distance the ball traveled, the apex or height of the ball during the shot, or other aspects.

[0167] These images, including tracers contained in the video or recording, provide a more robust description of the ball's flight path than is typically possible for the average viewer, especially when the ball travels a relatively long distance from the camera. In broadcasts without tracers, it can be difficult to track the ball's trajectory in the latter half of its flight, and the broadcast often switches to a different field of view showing the ball's landing area, leaving the viewer with incomplete information about how the ball moved. Therefore, video processing systems 622, 628 (or 112, 118, 300, 400) associated with system 600 can provide the user with more complete information related to the golf shot compared to images without tracers.

[0168] In addition to tracking the ball's trajectory, other graphic representations can be added to the ball's flight. For example, the flight path can be color-coded to indicate specific outcomes depending on speed, distance, or the ball's flight. For instance, if the ball is traveling above a certain speed, red or a "high" color can be applied to indicate high speed, or a frame graphic can be added as the ball's tail. Similarly, if the ball's flight is within the range considered "straight," green can be applied to the ball's flight to indicate that there is no hook or slice. Conversely, if the ball's flight is not straight, another color, such as yellow or red, can be applied to the ball's flight to indicate a less-than-ideal shot. It will be understood that these graphical additions based on the ball's flight can be adjusted to provide a variety of colors or graphical representations. In one embodiment, the golfer can indicate the type of indicator they want to display via a mobile device 631. The indicator types can be switched so that multiple types of indicators can be applied to the same recording.

[0169] Graphic elements can also be added to the recording based on where the ball landed at the end of each shot. As described above, the system 600 may include a position grid 650 associated with the terrain of the hole. For example, each grid square of the position grid 650 may correlate with a topographical feature of the hole. The selected squares may relate to bunkers, water hazards, out of bounds, woods, fairways, rough, greens, etc. The system 600, camera 601, and processor 611 can determine, based on the recording and the ball's flight, where the ball ended up within the grid 650, and therefore the type of location where the ball ended up. Based on the ball's position, the system 600 can add graphic elements.

[0170] For example, if it is determined that the ball has landed in a water hazard, graphic elements such as a sea monster can be added to the recording of the ball's position. Similarly, water splash illustrations You can also add people walking or snorkeling. If the ball is determined to have landed in a bunker or sand trap, a beach ball or beach umbrella can be added to the ball's location recording. If the ball is determined to have landed in the rough, an illustration of a lawnmower can be added to the ball's location. If the ball is determined to have landed in the woods, a squirrel or bear that appears to approach the ball and run away can be added. If the ball lands on the green, which is sometimes called the "dance floor," an illustration of a dancer or a disco ball can be added. It will be understood that various other types of ball locations and corresponding animations or illustrations can be applied based on the location. System 600 can include multiple animations for the same type of location so that each instance may have a relatively unique animation. Animations may be assigned randomly based on the type of location, or they may cycle around for identified golfers so that the repeating animations are limited.

[0171] The position grid 650 can also be used for additional purposes. In one embodiment, the position grid 650 can be used to help a golfer find their ball. Often, golfers have difficulty seeing the ball's flight after a shot and may not know where the ball is. The processor 611 can provide the golfer with ball position data so that the golfer does not have to spend extra time searching for where the ball landed. Thus, the golfer may be able to complete the hole in a more efficient way and improve the pace of play.

[0172] Similarly, based on the ball's position within the grid and the positions of other hole features correlated with the position grid 650, the system 600 can provide the golfer with additional information about the next shot. For example, the processor 611 can inform the golfer of the distance to the pin at the end of a shot, allowing the golfer to consider which club to use for the next shot before arriving at the ball's position. The system 600 can also provide other distance-based information, such as the distance needed to clear water hazards or bunkers, or the distance to a specific area of ​​the green, or other features of the hole.

[0173] As described above, the position grid 650 can be superimposed on the hole containing the green 604. Thus, the system 600 can also be configured to act as a virtual caddy to assist the golfer with putting. The system 600 may contain various information about the green stored in memory 303, cloud storage and services 404, or other database storage that communicates with the system 600. For example, it can store various undulations on the surface of the green and refer to this to determine the expected break for a particular putt. For example, the processor 611 can tell the golfer that the next putt will curve 3 inches to the left. The processor 611 can indicate whether the putt is uphill or downhill. Furthermore, the processor 611 can store various recordings of putts made from various locations on the green and aggregate these putts and use artificial intelligence to determine how the putt will move from a particular location on the green. For example, temperature, wind, humidity, and the direction of the grass grain can affect how the putt moves, but these are not readily apparent from the shape of the green and can change with time and weather conditions. By analyzing putt results recorded from different locations, the processor 611 can utilize this data to update its recommendations for different locations. In one embodiment, the position grid 650 associated with the green may have smaller grid squares to provide more accurate positional data for virtual caddie assistance.

[0174] The System 600 also automatically identifies the brands used by golfers. It can be used for the following purposes. Similar to the facial recognition described above, the processor 611 may, via the camera 601, identify the brand of the golf clubs the golfer is using or the brand of the clothing the golfer is wearing. The processor 611 can use its image recognition capabilities to identify logos, patterns, trademarks, etc., associated with different brands. In response to identifying the brand associated with each golfer, the processor 611 may be configured to communicate with the golfer and provide information about the brand, such as new products, product offers, or alternative products.

[0175] System 600 may also include the ability to integrate various software applications that may be used by golfers or golf course owners. Mobile device 631 may include a user app 630 that can operate to indicate the user's location relative to a golf hole, and the user app may be run manually or automatically. As described above, System 600 can automatically determine when a golfer has arrived at a particular golf hole. User app 630 may also be used to manually signal to processor 611 that the golfer has arrived at a hole. Similarly, user app 630 may notify the golfer when they have arrived at a hole where recording is available. User app 630 may provide other functions, such as allowing the golfer to refuse to have their shots recorded.

[0176] The owner of a golf course where System 600 is used may also have a dedicated application that interfaces with the processor 611. This application may be called the course application 632. The course application 632 may be configured to communicate with the user application 630. The course application 632 may enable a golf course to register it as a course that includes recording functionality. The user application 630 can receive information from various golf courses to be registered and provide the end user with information about available courses that offer recording functionality.

[0177] The course app 632 can communicate with the user app 630 to notify the course that an interested user is on-site. Alerts can be provided via the course app 632 that a user or group of users has arrived and that the user is interested in using the technology. Similarly, the user app 630 can notify the golfer that a nearby course or a course that the golfer is preparing to play on includes recording capabilities.

[0178] The user app 630 could also provide a function to request recording during a round. Alternatively, the course app 632 could be used by the golf course during golfer check-in to serve interested golfers. However, golfers may change their minds about whether or not to record their shots. Therefore, providing the user app 630 with a function to request recording or to refuse previously requested recordings could ensure that the user's needs are met.

[0179] The user app 630 may also provide a mechanism for paying for specific features of a shot before or after the shot is recorded. For example, if the shot is recorded, the recording and image processing may have the ability to provide the aforementioned tracer technology to the shot to show the ball's trajectory. This can be considered an additional feature, and the user may choose whether or not to apply the tracer technology after hitting the shot. However, in another embodiment, the tracer technology may be applied regardless of user input. The user app 630 may provide a function to turn the tracer on or off on demand.

[0180] User app 630 communicates with other user apps 630 for the benefit of other golfers. This is possible. For example, each member of a particular group of golfers can activate their user app 630, allowing each golfer to record their shots. Each golfer's shots can be aggregated by one or more user apps 630, providing each golfer with a compilation of their shots. The shots can be superimposed on each other or displayed sequentially. The user app 630 can provide other functions among the group of golfers, such as the location of each golfer on the course and the distance to each golfer's hole, which can provide desirable benefits among the group for competitive or recreational purposes.

[0181] In one embodiment, the user app 630 can provide the golfer with further camera / recording control to adjust the recording as needed. In one embodiment, the golfer can use the user app 630 to activate video recording using a record button displayed through the app 630 or otherwise provided to the mobile device 631, allowing the camera 601 to record the golfer. In a related embodiment, a stop button can also be provided to disable the camera 601, for example, while the golfer is reading the green.

[0182] In another embodiment, the golfer's recording may be automatically stopped according to a predetermined program. In one embodiment, geofencing 636 and / or position sensing technology can be used in combination with the manual activation described above to turn off camera 601 if the user forgets to stop recording.

[0183] Note that not all of the activities described in the general explanation or examples above are necessary, some of the activities may be unnecessary, and you may perform one or more additional activities in addition to those described. Furthermore, the order in which the activities are listed is not necessarily the order in which they should be performed.

[0184] The specifications and illustrations of the embodiments described herein are intended to provide a general understanding of the structures of various embodiments. The specifications and illustrations are not intended to serve as a comprehensive and exhaustive description of all elements and features of apparatuses and systems using the structures or methods described herein. Many other embodiments may be apparent to those skilled in the art upon consideration of this disclosure. Other embodiments may be used and derived from this disclosure so that structural substitutions, logical substitutions, or other modifications may be made without departing from the scope of this disclosure. Therefore, this disclosure should be considered illustrative rather than restrictive.

[0185] Certain features are described herein in the context of separate embodiments for clarity, but may also be provided in combination within a single embodiment. Conversely, for brevity, various features described in the context of a single embodiment may also be provided separately or in any combination of sub-features. Furthermore, references to values ​​within a range include all values ​​within that range.

[0186] Benefits, other advantages, and solutions to problems have been described above with respect to specific embodiments. However, benefits, advantages, solutions to problems, and features that may give rise to or make more prominent benefits, advantages, or solutions should not be construed as definitive, necessary, or essential to any or all of the claims.

[0187] The subject matter disclosed above should be considered illustrative and not limiting, and the appended claims are intended to cover all such modifications, extensions, and other embodiments that fall within the scope of the invention. Therefore, to the maximum extent permitted by law, the scope of the invention should be determined by the broadest permissible interpretation of the following claims and their equivalents, and not limited or restricted by the foregoing detailed description. It shall be considered as such.

[0188] The system 600 described above may be embodied as a group of related components controllable by a processor 611 and associated software. Various aspects of the system 600 and its use may also be embodied as methods for utilizing the above-mentioned functions to automatically provide the above-mentioned benefits to an end user. The system 600 may include various related software modules that can be implemented using the processor 611 or remotely, in communication with the processor 611. The modules or methods may include various artificial intelligence and machine learning and image processing to automatically process various images and provide a desired output to an end user. Figures 7 and 8 below illustrate an example of a method that can be used to automatically record and process videos of golf activities according to aspects of this disclosure.

[0189] Figure 7 shows one embodiment of method 700 relating to the above system. In one embodiment, method 700 is provided for automatically recording athletic ability. Method 700 includes, in step 702, having the processor detect that at least one player is located within a predetermined area; in step 704, identifying the first player of at least one player; in step 706, automatically recording the performance of the first player with at least one camera operably coupled to the processor and defining a first recording; in step 708, automatically saving the first recording to a database operably coupled to the processor; in step 710, automatically correlating the first recording with the first player; and in step 712, automatically processing the first recording and defining a first processed recording.

[0190] Figure 8 shows one embodiment of method 800 for automatically recording and providing video according to the system configuration described above. Method 800 may include, in step 802, recording video of a predetermined activity using a first remote camera located at a first geographical location, and in step 804, processing the video at the first geographical location. Processing may include, in step 806, identifying a first user performing the predetermined activity, in step 808, extracting image frames from the video that include the first user during the predetermined activity, and in step 810, merging the extracted image frames to produce a formatted video. Method 800 may also include, in step 812, outputting the formatted video to a remote video processing system for further processing.

[0191] It will be understood that various other additional method steps may be included in the above method, or that the above method may be modified in accordance with the functionality of the above system 100.

[0192] Such embodiments and models will be understood to be more than abstract ideas performed by a computer or other controller. The above embodiments are performed automatically based on various inputs that are not readily accessible or determinable, and the resulting final product cannot be provided in the same automated manner by any other means.

[0193] Although only a few exemplary embodiments have been described in detail above, those skilled in the art will readily understand that many modifications are possible to the exemplary embodiments without substantially departing from the novel teachings and merits of the embodiments of the present disclosure. Accordingly, all such modifications are intended to be within the scope of the embodiments of the present disclosure as defined in the following claims. In the claims, the means plus function clause is intended to cover not only the structures described herein as performing the enumerated functions, but also their structural equivalents as well as equivalent structures.

Claims

1. A method for automatically recording and providing golf videos, wherein the method is To provide a first remote camera positioned at a first camera location and a second remote camera positioned at a second camera location in a golf hole on a golf course, Using the first remote camera and the second remote camera, a video of the golf swing activity at the golf hole is recorded. The position of the object relative to the first remote camera and the second remote camera is determined by triangulation, The process includes processing the video, the processing including adding graphic elements to the video based on data associated with the recording, the graphic elements being one or more graphic elements added to one or more frames of the video, Text information indicating the location of the video, The names of one or more locations where the video was recorded, The golfer's name and The date the aforementioned video was recorded, The logo or other marketing image associated with the aforementioned location, A colored trace created to show the graphic lines between frames of a moving object, A method comprising adding augmented reality elements to the video to add enhancement effects depending on the location of the golf hole.

2. The method according to claim 1, further comprising adding sound effects to the video in response to the golfer's activities identified by the AI ​​golf logic.

3. The height of the first remote camera and the height of the second remote camera are determined and recorded. Measuring the distance between the first remote camera and the second remote camera, The method according to claim 1, further comprising determining the position of the object relative to the first remote camera and the second remote camera by triangulation, using the height of the first remote camera and the height of the second remote camera and the distance between the first remote camera and the second remote camera.

4. The method according to claim 1, further comprising identifying and marking the precise locations of various objects stationary on the golf course.

5. The method further includes defining a position grid comprising a plurality of grid boxes repeated across the golf hole, each of which has a fixed position relative to the first remote camera and the second remote camera, and the method further includes The method according to claim 1, comprising using, during image processing, the position of at least one of a first golfer and a golf ball associated with the first golfer, with respect to a specific grid box among the plurality of grid boxes.

6. The method according to claim 1, further comprising detecting the distance from the golf ball to the pin based on the relative positions of the pin and the golf ball.

7. Identifying the first golfer in the aforementioned golf hole, Identifying a second golfer in the aforementioned golf hole, Correlating the position of the golf ball with the position of one of the first golfer and the second golfer associated with the golf ball, The method according to claim 1, further comprising comparing the positions of the golf balls associated with the first golfer and the second golfer.

8. Determining the final position of the golf ball associated with the golf swing activity based on its position in at least one frame of the video, The method according to claim 1, further comprising locating a pin within the position of a single video segment of the video.

9. The method according to claim 1, further comprising using AI golf logic to identify the pin associated with the golf hole of the golf course.

10. The method according to claim 1, further comprising delivering the processed video to the mobile device of at least one golfer.

11. A system for automatically capturing and processing video on a golf course, wherein the system is The system comprises a first remote camera positioned at a first camera position and a second remote camera positioned at a second camera position in a golf hole of the golf course, wherein the first and second remote cameras are configured to record video of golf swing activities in the golf hole, and the system is The system further comprises a processor communicatively coupled to the first remote camera and the second remote camera, the processor being: The positions of the object relative to the first remote camera and the second remote camera are determined by triangulation. The system is configured to process the video, and processing the video includes adding graphic elements to the video based on data associated with the recording, wherein the graphic elements are one or more graphic elements added to one or more frames of the video, Text information indicating the location of the video, The names of one or more locations where the video was recorded, The golfer's name and The date the aforementioned video was recorded, The logo or other marketing image associated with the aforementioned location, A colored trace created to show the graphic lines between frames of a moving object, A system comprising augmented reality elements for adding enhancement effects to the video depending on the location of the golf hole.

12. The system according to claim 11, wherein the processor is further configured to add sound effects to the video in response to the golfer's activities identified by the AI ​​golf logic.

13. The system according to claim 11, wherein the first remote camera and the second remote camera are spaced apart and mounted at a height capable of providing images of the golf hole, and the processor is further configured to determine the position of the object relative to the first remote camera and the second remote camera by triangulation, using the heights of the first remote camera and the second remote camera and the distance between the first remote camera and the second remote camera.

14. The system according to claim 11, wherein the processor is further configured to use, during image processing, the position of at least one of a first golfer and a golf ball associated with the first golfer with respect to a specific grid box among a plurality of grid boxes of a position grid repeated across the golf hole, each of the plurality of grid boxes having a fixed position with respect to the first remote camera and the second remote camera.

15. The system according to claim 11, wherein the processor is further configured to detect the distance from the golf ball to the pin based on the relative positions of the pin and the golf ball.

16. The processor further comprises AI golf logic accessible to the processor, the AI ​​golf logic being configured to identify a first golfer in the golf hole and a second golfer in the golf hole, and the processor further comprises The position of the golf ball is correlated with the position of one of the first golfer and the second golfer associated with the golf ball. The system according to claim 11, configured to compare the positions of the golf balls associated with the first golfer and the second golfer.

17. Determining the final position of the golf ball associated with the golf swing activity based on its position in at least one frame of the video, The system according to claim 11, further comprising finding a pin in the location of a single video segment of the video.

18. The system according to claim 11, further comprising AI golf logic accessible to the processor, wherein the AI ​​golf logic is configured to identify pins associated with the golf holes of the golf course.