Update mobilevit.html
Browse files- mobilevit.html +10 -2
mobilevit.html
CHANGED
@@ -8,6 +8,8 @@
|
|
8 |
<script type="module">
|
9 |
// 허깅페이스의 pipeline 모듈을 import하십시오.
|
10 |
// To-Do: ???
|
|
|
|
|
11 |
// Make it available globally
|
12 |
window.pipeline = pipeline;
|
13 |
</script>
|
@@ -112,7 +114,8 @@
|
|
112 |
// Initialize the sentiment analysis model
|
113 |
async function initializeModel() {
|
114 |
// pipeline 함수를 이용하여 Xenova/mobilevit-small 모델의 인스턴스를 생성하여 이를 classifier에 저정하십시오. 인스턴스 생성 시 quantized 파라미터의 값을 false로 설정하십시오.
|
115 |
-
|
|
|
116 |
}
|
117 |
async function classifyImage() {
|
118 |
const textFieldValue = document.getElementById("imageClassificationURLText").value.trim();
|
@@ -122,7 +125,7 @@
|
|
122 |
async function classifyImageLocal() {
|
123 |
// HTML DOM의 element Id가 imageClassificationLocalFile인 element의 값을 fileInput으로 저장하십시오.
|
124 |
// To-Do: const fileInput = ???
|
125 |
-
|
126 |
const file = fileInput.files[0];
|
127 |
if (!file) {
|
128 |
alert('Please select an image file first.');
|
@@ -132,12 +135,17 @@
|
|
132 |
const url = URL.createObjectURL(file);
|
133 |
// classifier에 url을 입력하여 출력된 결과를 result에 저장하십시오.
|
134 |
// To-Do: ???
|
|
|
|
|
135 |
document.getElementById("outputAreaLocal").innerText = JSON.stringify(result, null, 2);
|
136 |
}
|
137 |
async function classifyTopImage() {
|
138 |
const textFieldValue = document.getElementById("imageClassificationTopURLText").value.trim();
|
139 |
// classifier에 textFieldValue를 입력 변수로, topk 파라미터 값을 3으로 설정하여 classifer를 수행하고 그 결과를 result에 저장하십시오.
|
140 |
// To-Do: ???
|
|
|
|
|
|
|
141 |
document.getElementById("outputAreaTop").innerText = JSON.stringify(result, null, 2);
|
142 |
}
|
143 |
// Initialize the model after the DOM is completely loaded
|
|
|
8 |
<script type="module">
|
9 |
// 허깅페이스의 pipeline 모듈을 import하십시오.
|
10 |
// To-Do: ???
|
11 |
+
import { pipeline } from 'https://cdn.jsdelivr.net/npm/@xenova/[email protected]';
|
12 |
+
|
13 |
// Make it available globally
|
14 |
window.pipeline = pipeline;
|
15 |
</script>
|
|
|
114 |
// Initialize the sentiment analysis model
|
115 |
async function initializeModel() {
|
116 |
// pipeline 함수를 이용하여 Xenova/mobilevit-small 모델의 인스턴스를 생성하여 이를 classifier에 저정하십시오. 인스턴스 생성 시 quantized 파라미터의 값을 false로 설정하십시오.
|
117 |
+
classifier = await pipeline('image-classification', 'Xenova/mobilevit-small', { quantized: false });
|
118 |
+
|
119 |
}
|
120 |
async function classifyImage() {
|
121 |
const textFieldValue = document.getElementById("imageClassificationURLText").value.trim();
|
|
|
125 |
async function classifyImageLocal() {
|
126 |
// HTML DOM의 element Id가 imageClassificationLocalFile인 element의 값을 fileInput으로 저장하십시오.
|
127 |
// To-Do: const fileInput = ???
|
128 |
+
const fileInput = document.getElementById("imageClassificationLocalFile");
|
129 |
const file = fileInput.files[0];
|
130 |
if (!file) {
|
131 |
alert('Please select an image file first.');
|
|
|
135 |
const url = URL.createObjectURL(file);
|
136 |
// classifier에 url을 입력하여 출력된 결과를 result에 저장하십시오.
|
137 |
// To-Do: ???
|
138 |
+
const labels = document.getElementById("labelsLocalText").value.trim().split(",").map(item => item.trim());
|
139 |
+
const result = await classifier(url, labels);
|
140 |
document.getElementById("outputAreaLocal").innerText = JSON.stringify(result, null, 2);
|
141 |
}
|
142 |
async function classifyTopImage() {
|
143 |
const textFieldValue = document.getElementById("imageClassificationTopURLText").value.trim();
|
144 |
// classifier에 textFieldValue를 입력 변수로, topk 파라미터 값을 3으로 설정하여 classifer를 수행하고 그 결과를 result에 저장하십시오.
|
145 |
// To-Do: ???
|
146 |
+
const labels = document.getElementById("labelsText").value.trim().split(",").map(item => item.trim());
|
147 |
+
const result = await classifier(textFieldValue, { topk: 3 });
|
148 |
+
|
149 |
document.getElementById("outputAreaTop").innerText = JSON.stringify(result, null, 2);
|
150 |
}
|
151 |
// Initialize the model after the DOM is completely loaded
|