From e72b94dbedf76149546d5f38f1d2b108f4f975f2 Mon Sep 17 00:00:00 2001 From: Nikhila Ravi Date: Wed, 12 Apr 2023 00:22:55 -0700 Subject: [PATCH] Update copyright headers --- demo/README.md | 16 ++++++++++++---- demo/src/App.tsx | 6 ++++++ demo/src/components/Stage.tsx | 6 ++++++ demo/src/components/Tool.tsx | 6 ++++++ demo/src/components/helpers/Interfaces.tsx | 6 ++++++ demo/src/components/helpers/maskUtils.tsx | 6 +++++- demo/src/components/helpers/onnxModelAPI.tsx | 6 ++++++ demo/src/components/helpers/scaleHelper.tsx | 6 ++++++ demo/src/components/hooks/context.tsx | 6 ++++++ demo/src/components/hooks/createContext.tsx | 6 ++++++ demo/src/index.tsx | 6 ++++++ 11 files changed, 71 insertions(+), 5 deletions(-) diff --git a/demo/README.md b/demo/README.md index 8eadbaa..41f1ddd 100644 --- a/demo/README.md +++ b/demo/README.md @@ -1,11 +1,19 @@ ## Segment Anything Simple Web demo -This **front-end only** demo shows how to load a fixed image and `.npy` file of the SAM image embedding, and run the SAM ONNX model in the browser using Web Assembly with mulithreading enabled by `SharedArrayBuffer`, Web Worker, and SIMD128. +This **front-end only** React based web demo shows how to load a fixed image and corresponding `.npy` file of the SAM image embedding, and run the SAM ONNX model in the browser using Web Assembly with mulithreading enabled by `SharedArrayBuffer`, Web Worker, and SIMD128. ## Run the app +Install Yarn + +``` +npm install --g yarn +``` + +Build and run: + ``` yarn && yarn start ``` @@ -18,7 +26,7 @@ Move your cursor around to see the mask prediction update in real time. In the [ONNX Model Example notebook](https://github.com/facebookresearch/segment-anything/blob/main/notebooks/onnx_model_example.ipynb) upload the image of your choice and generate and save corresponding embedding. -Initialize the predictor +Initialize the predictor: ```python checkpoint = "sam_vit_h_4b8939.pth" @@ -28,7 +36,7 @@ sam.to(device='cuda') predictor = SamPredictor(sam) ``` -Set the new image and export the embedding +Set the new image and export the embedding: ``` image = cv2.imread('src/assets/dogs.jpg') @@ -37,7 +45,7 @@ image_embedding = predictor.get_image_embedding().cpu().numpy() np.save("dogs_embedding.npy", image_embedding) ``` -Save the new image and embedding in `/assets/data`. +Save the new image and embedding in `src/assets/data`. ## Export the ONNX model diff --git a/demo/src/App.tsx b/demo/src/App.tsx index 75f00ce..a426553 100644 --- a/demo/src/App.tsx +++ b/demo/src/App.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import { InferenceSession, Tensor } from "onnxruntime-web"; import React, { useContext, useEffect, useState } from "react"; import "./assets/scss/App.scss"; diff --git a/demo/src/components/Stage.tsx b/demo/src/components/Stage.tsx index 3cc7823..5325048 100644 --- a/demo/src/components/Stage.tsx +++ b/demo/src/components/Stage.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import React, { useContext } from "react"; import * as _ from "underscore"; import Tool from "./Tool"; diff --git a/demo/src/components/Tool.tsx b/demo/src/components/Tool.tsx index 9789bd0..31afbe5 100644 --- a/demo/src/components/Tool.tsx +++ b/demo/src/components/Tool.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import React, { useContext, useEffect, useState } from "react"; import AppContext from "./hooks/createContext"; import { ToolProps } from "./helpers/Interfaces"; diff --git a/demo/src/components/helpers/Interfaces.tsx b/demo/src/components/helpers/Interfaces.tsx index 8a63588..59b80d0 100644 --- a/demo/src/components/helpers/Interfaces.tsx +++ b/demo/src/components/helpers/Interfaces.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import { Tensor } from "onnxruntime-web"; export interface modelScaleProps { diff --git a/demo/src/components/helpers/maskUtils.tsx b/demo/src/components/helpers/maskUtils.tsx index 717804c..709c77e 100644 --- a/demo/src/components/helpers/maskUtils.tsx +++ b/demo/src/components/helpers/maskUtils.tsx @@ -1,4 +1,8 @@ -// Functions for handling mask output from the ONNX model +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. // Convert the onnx model mask prediction to ImageData function arrayToImageData(input: any, width: number, height: number) { diff --git a/demo/src/components/helpers/onnxModelAPI.tsx b/demo/src/components/helpers/onnxModelAPI.tsx index a885085..2e006c9 100644 --- a/demo/src/components/helpers/onnxModelAPI.tsx +++ b/demo/src/components/helpers/onnxModelAPI.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import { Tensor } from "onnxruntime-web"; import { modeDataProps } from "./Interfaces"; diff --git a/demo/src/components/helpers/scaleHelper.tsx b/demo/src/components/helpers/scaleHelper.tsx index 26e3f52..815ceaa 100644 --- a/demo/src/components/helpers/scaleHelper.tsx +++ b/demo/src/components/helpers/scaleHelper.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + // Helper function for handling image scaling needed for SAM const handleImageScale = (image: HTMLImageElement) => { diff --git a/demo/src/components/hooks/context.tsx b/demo/src/components/hooks/context.tsx index 366056f..a26069f 100644 --- a/demo/src/components/hooks/context.tsx +++ b/demo/src/components/hooks/context.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import React, { useState } from "react"; import { modelInputProps } from "../helpers/Interfaces"; import AppContext from "./createContext"; diff --git a/demo/src/components/hooks/createContext.tsx b/demo/src/components/hooks/createContext.tsx index 398e324..c363be6 100644 --- a/demo/src/components/hooks/createContext.tsx +++ b/demo/src/components/hooks/createContext.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import { createContext } from "react"; import { modelInputProps } from "../helpers/Interfaces"; diff --git a/demo/src/index.tsx b/demo/src/index.tsx index 2f5499c..714dfc9 100644 --- a/demo/src/index.tsx +++ b/demo/src/index.tsx @@ -1,3 +1,9 @@ +// Copyright (c) Meta Platforms, Inc. and affiliates. +// All rights reserved. + +// This source code is licensed under the license found in the +// LICENSE file in the root directory of this source tree. + import * as React from "react"; import { createRoot } from "react-dom/client"; import AppContextProvider from "./components/hooks/context";