Tạo mặt nạ là một kỹ thuật phổ biến để trích xuất Vùng quan tâm [ROI]. Trong openCV, có thể xây dựng hình dạng mặt nạ tùy ý bằng cách sử dụng chức năng vẽ và thao tác theo bit
Trong mã ví dụ dưới đây, chúng tôi vẽ một vòng tròn và tạo một hình ảnh có mặt nạ bằng cách sử dụng thao tác AND theo bit như hình bên dưới
Trường hợp cond là Sai, giữ nguyên giá trị ban đầu. Trường hợp True, thay thế bằng giá trị tương ứng từ khác. Nếu cond có thể gọi được, thì nó được tính toán trên Sê-ri/DataFrame và sẽ trả về Sê-ri/DataFrame hoặc mảng boolean. Có thể gọi không được thay đổi Sê-ri/DataFrame đầu vào [mặc dù gấu trúc không kiểm tra nó]
khác vô hướng, Sê-ri/DataFrame hoặc có thể gọi đượcCác mục trong đó cond là True được thay thế bằng giá trị tương ứng từ mục khác. Nếu khác có thể gọi được, nó được tính toán trên Sê-ri/DataFrame và sẽ trả về vô hướng hoặc Sê-ri/DataFrame. Có thể gọi không được thay đổi Sê-ri/DataFrame đầu vào [mặc dù gấu trúc không kiểm tra nó]
tại chỗ bool, mặc định SaiCó thực hiện thao tác tại chỗ trên dữ liệu hay không
trục int, mặc định Không cóCăn chỉnh trục nếu cần. Đối với Sê-ri, tham số này không được sử dụng và mặc định là 0
Cấp độ căn chỉnh nếu cần
lỗi str, {‘raise’, ‘ignore’}, mặc định là ‘raise’Lưu ý rằng hiện tại tham số này sẽ không ảnh hưởng đến kết quả và sẽ luôn ép buộc đối với một loại dtype phù hợp
'nâng lên'. cho phép ngoại lệ được nâng lên
'Làm lơ'. ngăn chặn ngoại lệ. Khi có lỗi trả về đối tượng ban đầu
Không dùng nữa kể từ phiên bản 1. 5. 0. Đối số này không có hiệu lực.
Cố gắng chuyển kết quả trở lại loại đầu vào [nếu có thể]
Không dùng nữa kể từ phiên bản 1. 3. 0. Trả lại thủ công nếu cần.
Trả vềCùng loại với người gọi hoặc Không có nếuinplace=True
Xem thêm
Trả về một đối tượng có cùng hình dạng với chính mình
ghi chú
Phương pháp mặt nạ là một ứng dụng của thành ngữ if-then. Đối với mỗi phần tử trong DataFrame đang gọi, nếu cond
là False
thì phần tử đó được sử dụng; . Nếu trục của other
không thẳng hàng với trục của cond
Sê-ri/Khung dữ liệu, các vị trí chỉ mục bị lệch sẽ được điền bằng True
Chữ ký cho khác với. Khoảng
>>> s = pd.Series[range[5]] >>> t = pd.Series[[True, False]] >>> s.where[t, 99] 0 0 1 99 2 99 3 99 4 99 dtype: int64 >>> s.mask[t, 99] 0 99 1 1 2 99 3 99 4 99 dtype: int643 tương đương với
>>> s = pd.Series[range[5]] >>> t = pd.Series[[True, False]] >>> s.where[t, 99] 0 0 1 99 2 99 3 99 4 99 dtype: int64 >>> s.mask[t, 99] 0 99 1 1 2 99 3 99 4 99 dtype: int644
Để biết thêm chi tiết và ví dụ, hãy xem tài liệu
>>> s = pd.Series[range[5]] >>> t = pd.Series[[True, False]] >>> s.where[t, 99] 0 0 1 99 2 99 3 99 4 99 dtype: int64 >>> s.mask[t, 99] 0 99 1 1 2 99 3 99 4 99 dtype: int645 trong
dtype của đối tượng được ưu tiên. Giá trị lấp đầy được truyền tới dtype của đối tượng, nếu điều này có thể được thực hiện dễ dàng