代码拉取完成,页面将自动刷新
from argparse import ArgumentParser
import numpy as np
import torch
from yoloworld import TextEmbedder
def main():
parser = ArgumentParser()
parser.add_argument("classes", type=str, nargs="+",
help='List of classes separated by space. You can use "-" for multiple words per class. Example: cat dog street-light')
parser.add_argument("--output_dir", type=str, default="data", help="Output file to save class embeddings")
parser.add_argument("--output_name", type=str, default="class_embeddings.npz", help="Output file name")
parser.add_argument("--device", type=str, default="cuda" if torch.cuda.is_available() else "cpu")
args = parser.parse_args()
# Initialize text embedder
text_embedder = TextEmbedder(device=args.device)
# Replace - or _ with space in class names
classes = [class_name.replace("-", " ").replace("_", " ") for class_name in args.classes]
# Get text embeddings
class_embeddings = text_embedder(classes)
# Convert to numpy array
class_embeddings = class_embeddings.cpu().numpy().astype(np.float32)
# Save class embeddings and classes
output_path = args.output_dir + "/" + args.output_name
np.savez(output_path, class_embeddings=class_embeddings, class_list=np.array(args.classes))
if __name__ == "__main__":
main()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。