The present disclosure relates to traffic citation systems. Specifically, the present disclosure relates to traffic citations systems that interface with handheld photo enforcement units.
The written disclosure herein describes illustrative embodiments that are non-limiting and non-exhaustive. Reference is made to certain of such illustrative embodiments that are depicted in the figures described below.
This disclosure describes systems and methods for issuing citations. A citation system may receive data, including an image, from a handheld photo enforcement unit and issue a citation based on the image with minimal officer input. A handheld photo enforcement unit may include radar, light imaging detection and ranging (LIDAR), or another speed tracking device in combination with an image capture system. An officer or other user may use the handheld photo enforcement unit to capture a speed as well as an image of the vehicle. In some embodiments, the handheld photo enforcement unit may also measure the distance between two vehicles and the citation system may issue a tailgating violation. In some embodiments, the handheld photo enforcement unit may also be used to enforce a seatbelt or cell phone violations.
The handheld photo enforcement unit may communicate with the citation system via a network. For instance, the citation system may receive data from the handheld photo enforcement unit to identify a vehicle and a traffic event. For example, the data may include vehicle speed, an image capture, global positioning system (GPS) coordinates, video, a time stamp, and officer information. The citation system may provide the handheld photo enforcement unit with feedback based on the received data. For example, if the citation system fails to read a license plate based on the data provided, the citation system may request that an officer manually review the photo via the handheld photo enforcement unit. In some embodiments, the citation system may provide the feedback to another device such as a laptop, a cell phone, or another personal electronic device (PED). An officer may respond to the feedback from the citation system via the handheld photo enforcement unit or PED.
The citation system may also communicate with other systems and databases via a network. For example, the citation system may send and receive data to/from a DMV database. Similarly, in some embodiments, processor intensive tasks, such as image processing, may be handled by a remote server in communication with the citation system.
As used herein, the phrases “coupled to,” “communicatively coupled to,” and “in communication with” are broad enough to refer to any suitable coupling or other form of interaction between two or more components, including electrical, mechanical, fluid, and thermal interaction. Two components may be coupled to each other even though there may be intermediary devices between the two components.
Some of the infrastructure that can be used with embodiments disclosed herein is already available, such as: general-purpose computers, computer programming tools and techniques, digital storage media, and communications networks. A computer may include a processor, such as a microprocessor, a microcontroller, logic circuitry, or the like. The processor may include a special-purpose processing device, such as an ASIC, a PAL, a PLA, a PLD, an FPGA, or another customized or programmable device. The computer may also include a computer-readable storage device, such as non-volatile memory, static RAM, dynamic RAM, ROM, CD-ROM, disk, tape, magnetic memory, optical memory, flash memory, or another computer-readable storage medium.
Suitable networks for configuration and/or use, as described herein, include any of a wide variety of network infrastructures. Specifically, a network may incorporate landlines, wireless communication, optical connections, various modulators, demodulators, small form-factor pluggable transceivers, routers, hubs, switches, and/or other networking equipment. The network may include communications or networking software, such as software available from Novell, Microsoft, Artisoft, and other vendors, and may operate using UDP, TCP/IP, SPX, IPX, SONET, and other protocols over twisted pair, coaxial, or optical fiber cables; telephone lines; satellites; microwave relays; modulated AC power lines; physical media transfer; wireless radio links; and/or other data transmission “wires.” The network may encompass smaller networks and/or be connectable to other networks through a gateway or similar mechanism.
Aspects of certain embodiments of a citation system may be implemented as software modules or components. As used herein, a software module or component may include any type of computer instruction or computer-executable code located within or on a computer-readable storage medium. A software module may, for instance, comprise one or more physical or logical blocks of computer instructions, which may be organized as a routine, program, object, component, data structure, etc., that perform one or more tasks or implement particular abstract data types. A particular software module may comprise disparate instructions stored in different locations of a computer-readable storage medium, which together implement the described functionality of the module. Indeed, a module may comprise a single instruction or many instructions, and may be distributed over several different code segments, among different programs, and across several computer-readable storage media.
Some embodiments may be practiced in a distributed computing environment where tasks are performed by a remote processing device linked through a communications network. In a distributed computing environment, software modules may be located in local and/or remote computer-readable storage media. In addition, data being tied or rendered together in a database record may be resident in the same computer-readable storage medium, or across several computer-readable storage media, and may be linked together in fields of a record in a database across a network. According to one embodiment, a database management system allows users to interact with one or more databases and provides access to the data contained in the databases.
In the following description, various aspects of the illustrative implementations will be described using terms commonly employed by those skilled in the art to convey the substance of their work to others skilled in the art. However, it will be apparent to those skilled in the art that the disclosure may be practiced with only some of the described aspects. For purposes of explanation, specific configurations are set forth in order to provide a thorough understanding of the illustrative implementations. However, it will be apparent to one skilled in the art that the disclosure may be practiced without the specific details. In other instances, well-known features are omitted or simplified in order not to obscure the illustrative implementations.
Various operations will be described as multiple discrete operations, in turn, in a manner that is most helpful in understanding the disclosure; however, the order of description should not be construed to imply that these operations are necessarily order dependent. In particular, these operations need not be performed in the order of presentation.
Additional details and examples are provided with reference to the figures below. The embodiments of the disclosure can be understood by reference to the drawings, wherein like parts are designated by like numerals throughout. The components of the disclosed embodiments, as generally described and illustrated in the figures herein, could be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the systems and methods of the disclosure is not intended to limit the scope of the disclosure, as claimed, but is merely representative of possible embodiments.
The image sensor may capture an image or a video of one or more vehicles. For instance, an officer may use the handheld photo enforcement unit 100 to measure the speed of a vehicle. During the process, the image sensor may capture one or more images of the vehicle. The images may be discarded if a license plate is not visible. If multiple images are captured, the handheld photo enforcement unit 100 may detect the clearest image and use that image for processing a citation. In some embodiments, the handheld photo enforcement unit 100 may request that the officer select one of the images. In some embodiments, the handheld photo enforcement unit 100 may select a frame from a video for processing the citation.
The speed detector may capture and track the speed of a vehicle. In some embodiments, the speed detector may use radar, LIDAR, or other speed detection systems. In some embodiments, the handheld photo enforcement unit 100 may also use a LIDAR system to measure a distance between cars to determine if a tailgating violation has occurred.
The HMI 102 may facilitate interaction between an officer and the handheld photo enforcement unit 100. The HMI 102 may include one or more input/output interfaces that facilitate human machine interaction. For example, the HMI 102 may include a screen 104 and a set of physical buttons 106. The screen 104 may display a live view from the image sensor and/or a previously captured image. An officer may depress one of the physical buttons 106 corresponding to image capture and the screen 104 may display a freeze frame of the captured image.
Another physical button 106 may send the captured image to a citation system via, for example, a network interface. The handheld photo enforcement unit 100 may receive data associated with the image from the citation system and display identification data on the screen 104. The identification data may include license plate state, license plate number, vehicle make, vehicle model, and the vehicle's registered owner name. Additional information may be captured and displayed by the handheld photo enforcement unit 100 including vehicle speed, GPS coordinates of the image capture, and distance between the handheld photo enforcement unit 100 and the vehicle. In some embodiments, the screen 104 may be a touchscreen and include virtual buttons 112. In addition, or in other embodiments, the physical buttons 106 may be programmable and the virtual buttons 112 may provide a description of the physical buttons 106.
The handheld photo enforcement unit 100 may also include a communication interface to relay captured image data and traffic event data. For example, the handheld photo enforcement unit 100 may use wireless communication protocols such as Wi-Fi or LTE to transmit captured image data and traffic event data to a citation system.
A communication interface between the camera 202 and the citation server 204 may be direct or indirect. In certain embodiments, the camera 202 is in direct communication with the citation server 204, for example, through a wireless communication link such as a cellular communications link. In other embodiments, the camera 202 is provided with indirect communication with the citation server 204. For example, data may be transferred to/from the camera 202 through a laptop computer, mobile phone, memory card, etc. For instance, the camera 202 may capture the information, communicate with a laptop or a mobile phone via a Wi-Fi or Bluetooth connection then the laptop or a mobile phone can transmit the data to the citation server 204.
An officer may be deployed roadside and capture 206 an event with the camera 202. The officer may review 208 the event on the camera 202 and decide to proceed or reject the captured image. For example, the officer may decide to discard the image if it lacks sufficient clarity, or if the event did not constitute a violation. In some embodiments, the camera 202 may capture a video or multiple images. In some embodiments, the camera 202 may analyze the images or video frames to determine clarity and automatically present the most clear image with a license plate to the officer. In some embodiments, the camera 202 may present multiple images to the officer and the officer may select the image that he/she feels is the most clear.
If the officer elects to proceed with the citation process, the officer initiates loading 210 of the event and image into a citation service. In the example embodiment shown in
For example, as shown, the citation service may auto crop 212 the image of the event and use automatic license plate recognition (ALPR) or optical character recognition (OCR) to identify a license plate number. The citation service may communicate 214 with a department of motor vehicles (DMV) database and collect/edit data for submission. For example, the citation service may send the license plate number to the DMV database and receive owner information associated with the license plate number.
If the citation service fails to identify the license plate number, the service requests 216 officer manual review. The citation service may present the officer with a request 216 for manual review on the camera 202 or an auxiliary PED such as a laptop or cell phone. The officer reviews the failed capture and decides a submission step. For example, the officer may manually enter the license plate number if the officer can discern the number. The manually entry of the license plate number may be performed on the camera 202 or an auxiliary PED. The citation service may send this number to the DMV as described above. If the officer cannot discern the number, the image is discarded.
The citation service sends vehicle and owner information associated with the license plate number to the officer for approval. The citation service may present the vehicle and owner information on the camera 202 or an auxiliary PED. The officer does a final review 217 and decides to issue a citation or reject the event. The officer may enter his decision on an HMI associated with the camera 202 or the auxiliary PED. If the officer approves, the camera 202 or auxiliary PED forwards the event data to the citation server 204. The event data may include the image, speed, distance between cars, location of event, direction of travel, vehicle information, and owner information. The citation server 204 loads 218 the event data and issues a citation. The citation server 204 produces 220 citation documentation. The citation documentation may include a citation and an evidence package. The evidence package may include the image and ownership and vehicle information. The citation and evidence package may be forwarded to the violator. In some embodiments, the citation is forwarded to the violator and the evidence package is forwarded to a police database to store the evidence.
In certain embodiments, some or all of the officer review and/or input steps 208, 216, 217 are performed on the camera 202. In certain embodiments, at least one of the officer review and/or input steps 208, 216, 217 are performed on a user interface of an external device, such as a web browser of a laptop or mobile phone. For example, the officer review 208 of the image capture may occur on the camera 202, while the officer manual review 216 of the license plate and the final review 217 may occur on a user interface of a mobile phone.
A communication interface between the camera 302 and the automated web service 303 may be direct or indirect. In certain embodiments, the camera 302 is in direct communication with the automated web service 303, for example, through a wireless communication link. In other embodiments, the camera 302 is provided with indirect communication with the automated web service 303. For example, data may be transferred to/from the camera 302 through a laptop computer, mobile phone, memory card, etc. For instance, the camera 302 may capture the information, communicate with a laptop or a mobile phone via a Wi-Fi or Bluetooth connection then the laptop or a mobile phone can transmit the data to the citation server 304.
The automated web service 303 may be performed on a server remote from the camera 302. In some embodiments, the server may combine both the automated web service 303 and the citation server 304. The automated web service 303 may interface with the camera 302, the citation server 304, and an auxiliary PED. The automated web service 303 may send requests for additional information or for approval to the officer through the auxiliary PED or the camera 302.
An officer may be deployed roadside and capture 306 an event with the camera 302. The officer may review 308 the event on the camera 302 and decide to proceed or reject the captured image. For instance, if the officer decides the image lacks sufficient clarity or if the event did not constitute a violation, the image may be discarded. In some embodiments, the camera 302 may capture a video or multiple images. In some embodiments, the camera 302 or the automated web service 303 may analyze the images or video frames to determine clarity and automatically present the most clear image with a license plate to the officer. In some embodiments, camera may present multiple images to the officer and the officer may select the image that he/she feels is the most clear.
If the officer elects to proceed, the officer initiates loading 310 of the event into the automated web service 303. The automated web service 303 may perform actions to the event data. This may include image identification, manipulation, and associating data with the image. For example, as shown, the automated web service 303 may auto crop 312 the image of the event and use OCR to identify a license plate number. The automated web service 303 may communicate 314 with a DMV and collect/edit data for submission. For example, the automated web service 303 may send the license plate number to the DMV and receive owner information associated with the license plate number.
If the automated web service 303 fails to identify the license plate number, the automated web service 303 requests 316 officer manual review. The officer reviews the failed capture and decides a submission step. For example, the officer may manually enter the license plate number if the officer can discern the number. This number is sent to the DMV as described above. If the officer cannot discern the number, the image is discarded.
The owner information associated with the license plate number is sent to the officer for approval. The officer does a final review 317 and decides to issue a citation or reject the event. If the officer approves, the citation server 304 loads 318 the event data and issues a citation. Citation documentation is produced 320 and forwarded to the violator and/or a police database.
In certain embodiments, the officer review and input 308 is performed on the camera 302, and one or both of the officer review and/or input steps 316, 317 are performed on a user interface of an external device, such as a web browser of a laptop or mobile phone. In other embodiments, each of the officer review and/or input steps 308, 316, 317 are performed through the camera 302.
In certain embodiments, the handheld photo enforcement unit 402 is in direct communication with the citation server 404, for example, through a wireless communication link. In other embodiments, the handheld photo enforcement unit 402 is provided with indirect communication with the citation server 404. For example, data may be transferred to/from the handheld photo enforcement unit 402 through a laptop computer, mobile phone, memory card, etc. For instance, the handheld photo enforcement unit 402 may capture the information, communicate with a laptop or a mobile phone via a Wi-Fi or Bluetooth connection then the laptop or a mobile phone can transmit the data to the citation server 404.
An officer may be deployed roadside and capture 406 an event with the handheld photo enforcement unit 402. The officer may review 408 the event on the camera or on an auxiliary PED and decide to proceed or reject the captured image. For instance, if the officer decides the image lacks sufficient clarity or if the event did not constitute a violation, the event may be discarded. In some embodiments, the handheld photo enforcement unit 402 may determine to discard the image if the event does not constitute a violation. In some embodiments, the handheld photo enforcement unit 402 may capture a video or multiple images. In some embodiments, the handheld photo enforcement unit 402 may analyze the images or video frames to determine clarity and automatically present the most clear image with a license plate to the officer. In some embodiments, the handheld photo enforcement unit 402 may present multiple images to the officer and the officer may select the image that he/she feels is the most clear.
In certain embodiments, transmission 410 of event into service automatically occurs following positive officer review. As shown in
If the auto crop 412 or the translate 413 steps fail, the officer reviews 416 the failed capture and decides a next submission step. At this time the officer can either manually adjust ROI for the license plate and/or enter in the license plate individual characters for resubmission to the DMV. For example, the officer may manually enter the license plate number if the officer can discern the number. This number is sent to the DMV as described above. If the officer cannot discern the number, the image may be discarded.
The service may communicate 414 with a DMV and collect/edit data for submission back to the officer for review. For example, the service may send the license plate number to the DMV and receive owner information associated with the license plate number. The owner information associated with the license plate number is sent to the officer for approval.
The officer does a final review 417 and decides to issue a citation or reject the event. If the officer approves, the citation server 404 loads 418 the event data, assembles evidence package, and issues a citation. The evidence package may include the image of the license plate number, the location of the event, an image of the driver, and a LIDAR reading. A citation may be produced and mailed to the violator.
In certain embodiments, some or all of the officer review and/or input steps 408, 416, 417 are performed on the handheld photo enforcement unit 402. In certain embodiments, at least one of the officer review and/or input steps 408, 416, 417 are performed on a user interface of an external device, such as a web browser of a laptop or mobile phone.
In certain embodiments, a citation system may use data from a handheld photo enforcement unit to issue and forward a traffic citation in real time. A citation system may include a network interface and one or more processors. The network interface is for communication with a handheld photo enforcement unit. The one or more processors may manipulate the image and issue a citation based on the image. For example, the processor may auto crop an image around an ROI, the image being received from the handheld photo enforcement unit. The one or more processors may determine a license plate number using ALPR. The one or more processors may further issue, produce and forward a citation document to a traffic violator and/or a police database.
In certain embodiments, approvals and information received from an officer or another user may be provided for one or more of initial image, violation information (e.g., speed), processed image, extracted or user entered/corrected license plate number, and vehicle/owner information in real time, or very soon after the violation event, using the handheld photo enforcement unit. Thus, skilled users can make decisions based on current and/or recent events before memories of the event fade, which results in more accurate and reliable traffic violation enforcement.
The handheld photo enforcement unit 502 may include a camera to capture image data from a traffic event. The handheld photo enforcement unit 502 may also include a speed detection unit such as a LIDAR sensor to measure the speed of a vehicle. The handheld photo enforcement unit 502 may also measure the distance between vehicles. In some embodiments, the handheld photo enforcement unit 502 may include an HMI to receive input from an officer indicating whether captured image data should be processed for a citation.
The handheld photo enforcement unit 502 may include a transmitter to wirelessly transmit the captured image data and associated vehicle speed and distance between vehicles. The transmitter may transmit using Wi-Fi, Bluetooth, or a cellular network protocol.
The handheld photo enforcement unit 502 may be in communication with the image processing server 504 through a first interface 512. The first interface 512 may be a direct interface as shown. In some embodiments, the handheld photo enforcement unit 502 may transmit the image data and the traffic event data to a remote device. For example, the handheld photo enforcement unit 502 may transmit the image data and the traffic event data to the image processing server 504. In some embodiments, the handheld photo enforcement unit 502 may transmit information to both a PED 506 and the image processing server 504.
In some embodiments, the first interface 512 may be an indirect interface. For example, the handheld photo enforcement unit 502 may transit the image data and the traffic event data to a local device that relays it to the Image processing server 504. For instance, the handheld photo enforcement unit 502 may transmit the information to the PED 506 that may transmit the information to a remote server such as the image processing server 504. In some embodiments, the PED 506 may receive input from an officer indicating whether captured image data should be processed for a citation.
The image processing server 504 may comprise a receiver to receive a wireless signal comprising the captured image data and associated vehicle speed and distance between vehicles from the handheld photo enforcement unit 502. The image processing server 504 may further comprise a processing unit to extract the captured image data and associated vehicle speed and distance between vehicles. The image processing server 504 may determine a license plate number within the captured image data by cropping the image around a license plate and using OCR and/or ADL.
The image processing server 504 may retrieve vehicle and owner information associated with the license plate number from a DMV database 508. For example, the image processing server 504 may transmit the license plate number and/or image to the DMV database and receive a response containing vehicle and owner information.
The image processing server 504 may also transmit a review request to the PED 506 to obtain approval to issue a citation for the traffic event. The approval may cause the image processing server 504 to transmit the image data, traffic event data, and the vehicle and owner information to the citation server 510. The citation server 510 may prepare a citation and an evidence package. The citation and evidence package may be sent to the vehicle owner and to a police database.
The electronic memory 610 may include static RAM, dynamic RAM, flash memory, one or more flip-flops, or other electronic storage medium. The electronic memory 610 may include a plurality of modules 630 and data 640.
The modules 630 may include all or portions of other elements of the device. The modules 630 may run multiple operations serially, concurrently or in parallel by or on the one or more processors 612.
In some embodiments, portions of the disclosed modules, components, and/or facilities are embodied as executable instructions embodied in hardware or in firmware, or stored on a non-transitory, machine-readable storage medium. The instructions may comprise computer program code that, when executed by a processor and/or computing device, cause a computing system to implement certain processing steps, procedures, and/or operations, as disclosed herein. The modules, components, and/or facilities disclosed herein may be implemented and/or embodied as a driver, a library, an interface, an API, FPGA configuration data, firmware (e.g., stored on an EEPROM), and/or the like. In some embodiments, portions of the modules, components, and/or facilities disclosed herein are embodied as machine components, such as general and/or application-specific devices, including, but not limited to: circuits, integrated circuits, processing components, interface components, hardware controller(s), storage controller(s), programmable hardware, FPGAs, ASICs, and/or the like.
In some embodiments, the modules 630 may include a license plate identifier 632 and an authorization module 636. The license plate identifier 632 may identify the license plate by cropping the image around a license plate and using OCR and/or ADL to identify the numbers. In some embodiments, the license plate identifier 632 may be offloaded to an image processing server (e.g., an image processing server 750 of
The data 640 stored on the electronic memory 610 may include the data 640 generated by the handheld photo enforcement unit 650, such as by the modules 630 or other modules. The data 640 stored may be organized as one or more memory registers/addresses, files, and/or databases. The data 640 may include image data 642 and event data 644. The image data 642 may include one or more images, or a video of a traffic event. The event data 644 may include the speed of a vehicle in the image, distance between vehicles, direction of travel, location, etc.
The I/O interface 616 and/or the network interface 617 may facilitate interfacing with one or more input devices and/or one or more output devices including an image processing server, an auxiliary PED, or a citation server.
A system bus 618 may facilitate communication and/or interaction between the other components of the processing circuitry, including the electronic memory 610, the one or more processors 612, the network interface 617, the I/O interface 616, the speed detection unit 624, and the camera 622.
The camera 622 may capture an image of a traffic event, and the speed detection unit 624 may capture traffic event details such as speed, distance between cars, current location, direction of travel, etc. As can be appreciated, in other embodiments, the processing circuitry may be simpler than shown or described. For example, certain designs may forgo one or more components, such as memory, multiple processors, multiple interfaces, and the like, and instead execute instructions closer to or on bare metal (e.g., without intervening operating system or other software layer, executing instructions directly on logic hardware).
The electronic memory 710 may include static RAM, dynamic RAM, flash memory, one or more flip-flops, or another electronic storage medium. The electronic memory 710 may include a plurality of modules 730 and data 740.
The modules 730 may include all or portions of other elements of the device. The modules 730 may run multiple operations serially, concurrently or in parallel by or on the one or more processors 712.
In some embodiments, portions of the disclosed modules, components, and/or facilities are embodied as executable instructions embodied in hardware or in firmware, or stored on a non-transitory, machine-readable storage medium. The instructions may comprise computer program code that, when executed by a processor and/or computing device, cause a computing system to implement certain processing steps, procedures, and/or operations, as disclosed herein. The modules, components, and/or facilities disclosed herein may be implemented and/or embodied as a driver, a library, an interface, an API, FPGA configuration data, firmware (e.g., stored on an EEPROM), and/or the like. In some embodiments, portions of the modules, components, and/or facilities disclosed herein are embodied as machine components, such as general and/or application-specific devices, including, but not limited to: circuits, integrated circuits, processing components, interface components, hardware controller(s), storage controller(s), programmable hardware, FPGAs, ASICs, and/or the like.
In some embodiments, the modules 730 may include a license plate identifier 732 and an authorization module 736. The license plate identifier 732 may identify the license plate by cropping the image around a license plate and using OCR and/or ADL to identify the numbers. In some embodiments, the license plate identifier 732 may be offloaded to an image processing server (e.g., the image processing server 750). The authorization module 736 may present requests for authorization to process the image using the I/O interface 716, or an external PED connected through the network interface 717.
The data 740 stored on the electronic memory 710 may include the data 740 generated by a handheld photo enforcement unit or image processing server 750, such as by the modules 730 or other modules. The data 740 stored may be organized as one or more memory registers/addresses, files, and/or databases. The data 740 may include image data 742 and event data 744. The image data 742 may include one or more images, or a video of a traffic event. The event data 744 may include the speed of a vehicle in the image, distance between vehicles, direction of travel, location, etc. Vehicle data 746 may include vehicle and owner information associated with a vehicle in the image data from a DMV database
The I/O interface 716 and/or the network interface 717 may facilitate interfacing with one or more input devices and/or one or more output devices. For example, the image processing server 750 may interface with a handheld photo enforcement unit to receive image and event data, an auxiliary PED to receive officer approval or manual input, a DMV database to retrieve vehicle and owner information, and a citation server to have a citation/ticket and evidence package prepared.
A system bus 718 may facilitate communication and/or interaction between the other components of the processing circuitry, including the electronic memory 710, the one or more processors 712, the network interface 717, and the I/O interface 716.
As can be appreciated, in other embodiments, the processing circuitry may be simpler than shown or described. For example, certain designs may forgo one or more components, such as memory, multiple processors, multiple interfaces, and the like, and instead execute instructions closer to or on bare metal (e.g., without intervening operating system or other software layer, executing instructions directly on logic hardware).
Embodiments may be provided as a computer program product including a non-transitory computer and/or machine-readable medium having stored thereon instructions that may be used to program a computer (or other electronic device) to perform processes described herein. For example, a non-transitory computer-readable medium may store instructions that, when executed by a processor of a computer system, cause the processor to perform certain methods disclosed herein. The non-transitory computer-readable medium may include, but is not limited to, hard drives, floppy diskettes, optical disks, CD-ROMs, DVD-ROMs, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, solid-state memory devices, or other types of media/machine-readable media suitable for storing electronic and/or processor executable instructions.
Any methods disclosed herein include one or more steps or actions for performing the described method. The method steps and/or actions may be interchanged with one another. In other words, unless a specific order of steps or actions is required for proper operation of the embodiment, the order and/or use of specific steps and/or actions may be modified.
In some cases, well-known features, structures, or operations are not shown or described in detail. Furthermore, the described features, structures, or operations may be combined in any suitable manner in one or more embodiments. It will also be readily understood that the components of the embodiments as generally described and illustrated in the figures herein could be arranged and designed in a wide variety of different configurations.
Similarly, it should be appreciated that in the above description of embodiments, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure. This method of disclosure, however, is not to be interpreted as reflecting an intention that any claim requires more features than those expressly recited in that claim. Rather, as the following claims reflect, inventive aspects lie in a combination of fewer than all features of any single foregoing disclosed embodiment. Thus, the claims are hereby expressly incorporated into this Detailed Description, with each claim standing on its own as a separate embodiment. This disclosure includes all permutations of the independent claims with their dependent claims.
It will be understood by those having skill in the art that many changes may be made to the details of the above-described embodiments without departing from the underlying principles of the invention. The scope of the present invention should, therefore, be determined only by the following claims.
Number | Date | Country | |
---|---|---|---|
62504457 | May 2017 | US |