logo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Readme
Files and versions

136 lines
3.4 KiB

2 years ago
# Select video
*author: Chen Zhang*
<br />
## Description
This operator select input list by simply aggregating, sorting and then filtering it.
<br />
## Code Example
For two input lists: video urls and scores, aggregate url by reduce_function, then sort aggregated scores, then select top k results.
```python
2 years ago
from towhee import pipe, ops, DataCollection
2 years ago
p = (
pipe.input('video_urls', 'scores') \
.map(('video_urls', 'scores'), 'res', ops.video_copy_detection.select_video(top_k=2, reduce_function='mean', reverse=True)) \
.output('video_urls', 'scores', 'res')
)
DataCollection(p(['a', 'a', 'c', 'a', 'b', 'b', 'c', 'c'], [2, 8, 9.3, 5, 2, 1, 0, -1])).show()
2 years ago
```
![](mean.png)
```python
2 years ago
from towhee import pipe, ops, DataCollection
p = (
pipe.input('video_urls', 'scores') \
.map(('video_urls', 'scores'), 'res', ops.video_copy_detection.select_video(top_k=2, reduce_function='sum', reverse=True)) \
.output('video_urls', 'scores', 'res')
)
2 years ago
DataCollection(p(['a', 'a', 'c', 'a', 'b', 'b', 'c', 'c'], [2, 8, 9.3, 5, 2, 1, 0, -1])).show()
2 years ago
```
![](mean.png)
```python
2 years ago
from towhee import pipe, ops, DataCollection
2 years ago
p = (
pipe.input('video_urls', 'scores') \
.map(('video_urls', 'scores'), 'res', ops.video_copy_detection.select_video(top_k=2, reduce_function='max', reverse=True)) \
.output('video_urls', 'scores', 'res')
)
DataCollection(p(['a', 'a', 'c', 'a', 'b', 'b', 'c', 'c'], [2, 8, 9.3, 5, 2, 1, 0, -1])).show()
2 years ago
```
![](max.png)
```python
2 years ago
from towhee import pipe, ops, DataCollection
p = (
pipe.input('video_urls', 'scores') \
.map(('video_urls', 'scores'), 'res', ops.video_copy_detection.select_video(top_k=2, reduce_function='min', reverse=True)) \
.output('video_urls', 'scores', 'res')
)
2 years ago
DataCollection(p(['a', 'a', 'c', 'a', 'b', 'b', 'c', 'c'], [2, 8, 9.3, 5, 2, 1, 0, -1])).show()
2 years ago
```
![](min.png)
<br />
## Factory Constructor
Create the operator via the following factory method
***select_video(top_k: int, reduce_function: str, reverse: bool)***
**Parameters:**
***top_k:*** *int*
​ Select top k result.
***reduce_function:*** *str*
​ Aggregate function name, support name:
- sum
- mean
- max
- min
***reverse:*** *bool*
​ Whether sorted result is reversed.
<br />
## Interface
**Parameters:**
***video_urls:*** *List[str]*
​ Video urls.
***scores:*** *List[float]*
​ Every video scores.
**Returns:** *List[str]*
​ Selected video url results.
2 years ago
# More Resources
- [Extracting Event Highlights Using iYUNDONG Sports App - Zilliz blog](https://zilliz.com/blog/Extracting-Events-Highlights-Using-iYUNDONG-Sports-App): iYUNDONG continually seeks to support its users with real-time image retrieval services. When it decided to develop its App, it chose Milvus to build its core image search system. Discover how Milvus, an open-source vector database, can help build an intelligent image retrieval system that can extract sport event highlights.
- [4 Steps to Building a Video Search System - Zilliz blog](https://zilliz.com/blog/building-video-search-system-with-milvus): Searching for videos by image with Milvus
- [Vector Database Use Cases: Video Similarity Search - Zilliz](https://zilliz.com/vector-database-use-cases/video-similarity-search): Experience a 10x performance boost and unparalleled precision when your video similarity search system is powered by Zilliz Cloud.