semvec/pypi-packages huggingface dataset:
sch-ossc-rsp 1.1.0
가위바위보 프로그램
Requires Python: >=3.7

# rsp

> 파이썬 가위바위보 라이브러리

가위바위보 기능을 파이썬에서 라이브러리로 이용할 수 있도록 개발되었습니다.
## 기능

### 상수

#### `Hand`

가위바위보 수 타입

* `ROCK` 가위바위보 중 '바위' 수를 의미한다
* `SCISSORS` 가위바위보 중 '가위' 수를 의미한다
* `PAPER` 가위바위보 중 '보' 수를 의미한다

#### `Language`

변환 가능한 언어

* `KOREAN` 한국어 (기본값)
* `MGB` 한국어 (묵찌빠)
* `ENGLISH` 영어
* `JAPANESE` 일본어
* `CHINESE` 중국어

### 함수

```python
is_a_winning_b(a: Hand, b: Hand) -> bool
```

`a`가 `b`를 이기는 수인지 확인하는 함수

```python
is_a_losing_b(a: Hand, b: Hand) -> bool
```

`a`가 `b`를 지는 수인지 확인하는 함수

```python
is_a_equal_b(a: Hand, b: Hand) -> bool
```

`a`와 `b`가 비겼는지 확인하는 함수

```python
stringify(hand: Hand, language: Language) -> str
```

`hand`를 `language` 언어로 변환하여 출력해주는 함수

```python
hand_convert(string: str) -> Hand
```
사용자 입력을 `Hand` 타입으로 바꿔주는 함수

```python
random_choice() -> Hand
```

`ROCK`, `SCISSORS`, `PAPER`중 하나를 랜덤으로 골라서 출력하는 함수

```python
probability(pro: float)
```

`random_choice_probability` 함수의 확률을 결정하는 함수

```python
random_choice_probability(a: Hand) -> Hand
```

`a`의 확률에 가중치를 부여하여 랜덤으로 골라 출력하는 함수
yolov5-onnx-cv 0.0.5
YOLOv5 ONNX example by OpenCV DNN.
Requires Python: >=3.6

YOLOv5-ONNX read example by OpenCV DNN.

If you wanna export to onnx format, please refer:
https://github.com/ultralytics/yolov5


Install package
```
pip install yolov5-onnx-cv
```


Code example:

```python
import numpy as np
from yolov5_onnx_cv import YOLOv5_ONNX_CV
import cv2


# Just inherit YOLOv5_ONNX_CV and define your class_names and class_colors
class YOLOv5(YOLOv5_ONNX_CV):

    # Define coco class names
    class_names = [
        'person', 'bicycle', 'car', 'motorcycle', 'airplane', 
        'bus', 'train', 'truck', 'boat', 'traffic light', 
        'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 
        'cat', 'dog', 'horse', 'sheep', 'cow', 'elephant', 'bear', 
        'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 
        'tie', 'suitcase', 'frisbee', 'skis', 'snowboard', 'sports ball', 
        'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard', 
        'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 
        'knife', 'spoon', 'bowl', 'banana', 'apple', 'sandwich', 
        'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 
        'cake', 'chair', 'couch', 'potted plant', 'bed', 'dining table', 
        'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone', 
        'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 
        'clock', 'vase', 'scissors', 'teddy bear', 'hair drier', 'toothbrush'
    ]

    # Random to generate colors
    class_colors = [(int(i[0]), int(i[1]), int(i[2])) for i in np.random.randint(256, size=(len(class_names), 3))]


# Simple camera read
def load_capture():
    capture = cv2.VideoCapture(1)
    capture.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
    capture.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
    return capture


if __name__ == '__main__':
    # Load camera
    capture = load_capture()
    
    # Load checkpoint from any path. (onnx only)
    model = YOLOv5('tests/yolov5s.onnx', (640, 640), 0.5)

    while True:
        # Get camera frame
        success, frame = capture.read()
        if not success:
            print('Open camera fail.')
            break

        # Inference all of output result
        preds = model(frame)
        for pred in preds:
            print(pred.id, pred.name, pred.conf, pred.box)

        # Show labeled box result
        model.show_label_boxes() 
        
        # or you can get labeled box result
        # img = model.get_label_boxes_image()

        # Any key to quit.
        if cv2.waitKey(1) > -1:
            print('finished by user')
            break

    capture.release()

```

Demo example:
![image info](./demo/sample.jpg)