Automated detection of features and/or parameters within a water environment using image data
AssigneeSurfline\Wavetrak, Inc.
InventorBenjamin Freeston
Life of this patent
Estimating the term…
Abstract
Automated detection of features and/or parameters within an ocean environment using image data. In an embodiment, captured image data is received from ocean-facing camera(s) that are positioned to capture a region of an ocean environment. Feature(s) are identified within the captured image data, and parameter(s) are measured based on the identified feature(s). Then, when a request for data is received from a user system, the requested data is generated based on the parameter(s) and sent to the user system.
Claims19
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, wherein identifying one or more waves comprises detecting a wave crest, and
- measure one or more parameters of the region based on the identified one or more waves;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, wherein identifying one or more waves comprises detecting a wave trough, and
- measure one or more parameters of the region based on the identified one or more waves;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, wherein identifying one or more waves comprises detecting a wave face, and
- measure one or more parameters of the region based on the identified one or more waves;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a wave height;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise wave spectra;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a peak wave period;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a width of a wave before breaking;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a direction of a wave;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a number of waves in the region;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a speed of a wave;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise one or both of a number of waves surfed per unit time in the region or a number of waves surfed per surfer in the region;
- and, for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise one or more of a location in the region at which longest surfed waves originated, an average interval between surfed waves in the region, or an average distance paddled by surfers per wave in the region;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network, wherein the request for data indicates a time frame,
- generate the requested data based on the one or more parameters, wherein the requested data is generated based on the one or more parameters measured for image data captured during the time frame, and
- send the requested data to the user system via the at least one network.
A method comprising using at least one hardware processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves;
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and send the requested data to the user system via the at least one network;
- and,
- for at least one user system, when the one or more parameters satisfy one or more predefined criteria, send an alert to a user of the at least one user system.
A system comprising:
- at least one hardware processor;
- and
- one or more software modules configured to, when executed by the at least one hardware processor,
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a wave height, and, for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
A non-transitory computer-readable medium having instructions stored therein, wherein the instructions, when executed by a processor, cause the processor to:
- for each of one or more cameras that are positioned to capture image data of a region of a water environment,
- receive the captured image data via at least one network,
- identify one or more waves within the captured image data using a machine-learning engine that has been trained on annotated image data to identify waves in the captured image data, and
- measure one or more parameters of the region based on the identified one or more waves, wherein the one or more parameters comprise a wave height;
- and,
- for each of one or more user systems,
- receive a request for data from the user system via the at least one network,
- generate the requested data based on the one or more parameters, and
- send the requested data to the user system via the at least one network.
Dependencies are inferred from the claim text.